随笔分类 - 算法
摘要:算法与实现 选择排序 算法思想 从数组中选择最小元素,将它与数组的第一个元素交换位置。再从数组剩下的元素中选择出最小的元素,将它与数组的第二个元素交换位置。不断进行这样的操作,直到将整个数组排序。 动态过程 算法原理参考:图解选择排序。 代码实现 // 选择排序 public static void
阅读全文
摘要:动态规划概述 动态规划(Dynamic Programming,DP)是运筹学的一个分支,是求解决策过程最优化的过程。 动态规划算法通常用于求解具有某种最优性质的问题。在这类问题中,可能会有许多可行解,每一个解都对应于一个值,我们希望找到具有最优值的解。 动态规划算法与分治法类似,其基本思想也是将待
阅读全文
摘要:知识回顾 贪心算法(greedy algorithm),又称贪婪算法。是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是最好或最优的算法。 贪心算法在有最优子结构的问题中尤为有效。最优子结构的意思是局部最优解能决定全局最优解。简单地说,问题能够分解成子问题来解决,
阅读全文
摘要:二分查找也叫做折半查找,查找的对象是已经排好序的序列(一般默认为升序)。 让我们来看看原理:顾名思义,就是先将中间数和目标key比较,如果相等则返回其索引,否则把序列分成两半,根据大小判断所查找的key在哪一半中,对这一半序列再重复上述步骤,直到找到目标key或查找完序列。 一般的二分查找 被查找的
阅读全文

浙公网安备 33010602011771号