算法思想
目之子叶
这个作者很懒,什么都没留下…
展开
-
算法分析-最大子序列
定义增长率T(N)=O(f(N))T(N) = O(f(N)) —T(N)T(N)的增长率小于等于f(N)f(N)的增长率。T(N)=Ω(f(N))T(N) = \Omega (f(N)) —T(N)T(N)的增长率大于等于f(N)f(N)的增长率。T(N)=θ(f(N))T(N) = \theta (f(N)) —T(N)T(N)的增长率等于f(N)f(N)的增长率。T(N)=o(f(原创 2016-04-16 12:40:31 · 321 阅读 · 0 评论 -
算法分析-表、栈和队列
1. 表的简单数组实现一个数组arr在必要时候如何被拓展?int [] arr = new int[10];...//下面我们决定扩大 arr.int [] newArr = new int[arr.length*2];for(int i = 0;i < arr.length;i++){ newArr[i] = arr[i];}arr = newArr;2. Java Colle原创 2016-04-18 15:20:18 · 377 阅读 · 0 评论 -
七大查找算法
顺序查找二分查找插值查找斐波那契查找树表查找分块查找哈希查找查找是在大量的信息中寻找一个特定的信息元素。在计算机应用中,查找是常用的基本运算,例如编译程序中符号表的查找。查找定义:根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素(或记录)。查找算法分类:1)静态查找和动态查找:注:静态或者动态都是针对查找表而言的。动态表指查找表中有删除和插入操作的表。2)无序查找和有序转载 2016-05-03 20:23:32 · 2633 阅读 · 0 评论 -
算法与数据结构(JAVA)-排序算法总结
冒泡排序排序思想:通过与相邻元素的比较和交换来把小的数交换到最前面。这个过程类似于水泡向上升一样,因此而得名。例如,对5,3,8,6,4这个无序序列进行冒泡排序。首先从后向前冒泡,4和6比较,把4交换到前面,序列变成5,3,8,4,6。同理4和8交换,变成5,3,4,8,6,3和4无需交换。5和3交换,变成3,5,4,8,6,3.这样一次冒泡就完了,把最小的数3排到最前面了。对剩下的序列依次冒泡就会原创 2016-04-25 21:58:46 · 453 阅读 · 0 评论