算法
Koyomii
学习备忘
展开
-
学习笔记-选择排序 14/12/29
Int型数组,有i个元素,则循环i-1次,每循环一次找到一个未排序部分的最小值与每次循环起始元素(未排序部分的第一项)交换。(通过每次循环的起始元素不断与后面未排序元素进行比较,遇到小的元素就取而代之继续与后面比较,从而得到最小的元素,注意temp的使用技巧)排序顺序:从数组第一个元素开始到倒数第二个元素 #include using namespace std; int main() { i原创 2015-11-03 21:14:12 · 547 阅读 · 0 评论 -
学习笔记-冒泡排序 14/12/29
重点要理解冒泡的含义:一个无序数组,按序号从小到大从上往下排。最下面的元素(也就是编号最后一个)开始往上比较(必须从最后一个开始比,而且必须其比前一项小才往上冒泡交换,否则算法不成立),如果比前一项小,则两项交换,交换完则进行前一项和前前项的比较交换直到比较到有序部分,这样循环i-1次就可有序。 排序顺序:最后一个元素开始到正数第二个元素 #include using namespace s原创 2015-11-03 21:17:07 · 372 阅读 · 0 评论 -
学习笔记-直接插入排序 15/01/05
注意不同点:直接插入排序重点在已排序部分,在排序刚开始时就把数组第一个元素作为已排序部分。每次都把未排序部分的第一个元素与已排序部分比较找到插入位置,这样才可保证排序。 void InsertSortArray(int arr[] , int n) { for(int i=1;i<n;i++)//循环从第二个数组元素开始,因为arr[0]作为最初已排序部分 {原创 2015-11-03 21:21:41 · 384 阅读 · 0 评论