1. 知识点
1.1. 数据结构和算法
1.1.1. 链表
1.1.2. 栈
1.1.3. 排序算法
冒泡排序
选择排序
插入排序
快速排序
1.2. Linux
1.2.1. ...
分类:
编程语言 时间:
2015-04-16 12:31:14
阅读次数:
167
//c 实现 1 #include "stdafx.h" 2 #include "stdlib.h" 3 4 void swap(int& a,int& b) 5 { 6 int t =a; 7 a = b; 8 b = t; 9 }10 int _tmain(int a...
分类:
编程语言 时间:
2015-04-15 22:58:51
阅读次数:
155
选择排序的思想也比较容易理解,用一个变量控制数组的有序区和无序区,从无序区中挑选一个最小的数放到有序区的末尾,直到把无序区数据挑完为止,相关代码如下:#includevoid Swap(int &a , int &b) { a = a ^ b ; b = a ^ b ; a ...
分类:
编程语言 时间:
2015-04-15 20:57:24
阅读次数:
132
#includevoid show(int arr[], int length){ for(int i=0; i arr[j]) { _swap(&min, &arr[j]); } } //将最小的数放到正确的位置 if(arr[i] != min) { _swap(...
分类:
编程语言 时间:
2015-04-15 13:13:45
阅读次数:
142
#coding:utf8
def sort(start_list):
num = len(start_list)
for i in range(num-1):
min = i
for j in range((i+1),num):
if start_list[j] < start_list[min]:
...
分类:
编程语言 时间:
2015-04-14 00:47:09
阅读次数:
138
shell排序的方法又称缩小增量法,是对直接插入排序法的改进。至于对于分组后采用哪种排序方法实现,本例采用直接选择排序和直接插入排序,理论上讲,通过分组排序后,数据基本上有序,这时通过直接插入排序会比直接选择排序好,因为直接选择排序每一趟排序都必须比较所有的元素。具体代码如下:/* *shell排序...
分类:
编程语言 时间:
2015-04-13 12:37:36
阅读次数:
158
选择排序也是比较简单的一种排序方法,原理也比较容易理解,它与冒泡排序的比较次数相同,但选择排序的交换次数少于冒泡排序。冒泡排序是在每次比较之后,若比较的两个元素顺序与待排序顺序相反,则要进行交换,而选择排序在每次遍历过程中只记录下来最小的一个元素的下标,待全部比较结束之后,将最小的元素与未排序的那部...
分类:
编程语言 时间:
2015-04-12 21:03:53
阅读次数:
176
package my0410;public class SelectSort { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated met...
分类:
编程语言 时间:
2015-04-11 22:14:22
阅读次数:
141
名称数据对象稳定性时间复杂度空间复杂度描述平均最坏冒泡排序数组(无序区,有序区)。从无序区通过交换找出最大元素放到有序区前端。选择排序数组(有序区,无序区)。在无序区里找一个最小的元素跟在有序区的后面。对数组:比较得多,换得少。链表插入排序数组、链表(有序区,无序区)。把无序区的第一个元素插入到有序...
分类:
编程语言 时间:
2015-04-10 23:52:20
阅读次数:
230
《算法》第4版作者是Robert Sedgewick 和 Kevin Wayne。 1. 选择排序 选择排序可以说是最简单的排序方法。首先,找到数组中最小的那个元素;其次,将它与数组的第一个元素交换位置(如果第一个元素就是最小元素,那么它就和自己交换);再次,在剩下的元素中找到最小的元素,将它...
分类:
编程语言 时间:
2015-04-10 21:52:26
阅读次数:
164