(一)什么是堆 堆实际上是一棵完全二叉树,其任何一非叶节点满足性质:Key[i]<=key[2i+1]&&Key[...[作者空间]
特征 有穷性 确切性 输入项 输出项 可行性 算法优劣评定 时间复杂度 空间复杂度 正确性 可读性 健壮性 时间复...[作者空间]
(一)基本思想 将所有待比较数值(正整数)统一为同样的数位长度,数位较短的数前面补零。然后,从最低位(即个位数)开...[作者空间]
(一)基本思想 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的...[作者空间]
(一)基本思想 在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面...[作者空间]
(一)基本思想 选择一个基准元素,通常选择第一个元素或者最后一个元素,通过一趟扫描,将待排序列分成两部分,一部分比...[作者空间]
本文将会介绍三个用动态规划法解决的例子,分别是: 楼梯台阶问题 二项式系数求解 最大乘积子数组问题 楼梯台阶问...[作者空间]
问题简介 本文将介绍计算机算法中的经典问题——最大子数组问题(maximum subarray problem...[作者空间]
继续讲故事~~ 这天,丁丁正走在路上,欣赏着路边迷人的城市风景,突然发现前面的大楼前围了一波吃瓜群众。他好奇...[作者空间]
继续讲故事~~ 我们的主人公现在已经告别了生于斯,长于斯的故乡,来到了全国最大的城市S市。这座S市,位于国家...[作者空间]
继续讲故事~~ 转眼我们的主人公丁丁就要离开自己的家乡,去大城市见世面了。这天晚上,妈妈正在耐心地帮丁丁收拾...[作者空间]
继续讲故事~~ 上次讲到我们的主人公丁丁,用神奇的动态规划法解决了杂货店老板的两个找零钱问题,得到了老板的肯...[作者空间]
本次博客尝试以storyline的方式来写作,如有不足之处,还请多多包涵~~ 问题的诞生 我们故事的主人公...[作者空间]
动态规划法与分治方法 动态规划(Dynamic Programming)与分治方法相似,都是通过组合子问题的解...[作者空间]
折半查找法又称为二分查找法。 (一)基本思想 假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,...[作者空间]
查找是最常见的数据操作之一,也是数据结构的核心运算之一,其重要性不言而喻。顺序查找是最简单的查找策略,对于小规模的...[作者空间]
在学习归并排序之前,请大体浏览一下 程序员必须掌握的8大排序算法 (一)基本思想 归并(Merge)排序法是将两个...[作者空间]
栈是一种先入后出的数据结构。如下图所示,入栈的顺序为1、2、3;出栈的顺序则反过来:3、2、1。 可以想象往一个箱...[作者空间]
一、基本概念 二叉树:每个结点的子结点个数不大于2的树,叫做二叉树。根结点:最顶部的那个结点叫做根结点,根结点是所...[作者空间]
约瑟夫环(Josephus)问题是由古罗马的史学家约瑟夫(Josephus)提出的,他参加并记录了公元66—70年...[作者空间]