随笔分类 - C/C++
C/C++
摘要:1.there are two variables, don't use if.. else or ?: or switch or other judgement statements,find out the biggest number of the two numbers. 返回2个数中较大的数,不使用if else "?:" 或switch 语句 1 // return the biggest number without any judgement statements. 2 // create by Young 3 // date 20130707 4
阅读全文
摘要:插入排序:插入排序是假设数列已经按顺序排列,反复将每一个元素插入,如果待插入数据比所有元素大,就直接放到最后;如果比前置元素小,前置元素后移,直至遇到比待插入小的位置。初始状态,假设数列只有一个元素33第一步将6插入 6比33小 33后移,6插入到33前面第二步将-5插入 -5 比33小 33后移 -5比6小 6后移第三步 将59插入 55 比-5 6 33 都大,直接插入在最后边第四步 将-12插入 -12比 -5 6 33 59 都小 12 插入最前端View Code #include<iostream>//insertion sort using namespace std
阅读全文
摘要:选择法排序:找出最小值,依次第一个位置互换。例如数组:33,6,-5,59,-12第一次遍历: 找出最小值-12与数组第一个值33互换第二次遍历:找出除数组第一个值以外的剩下的最小值-5,与数组第二个位置的值6互换......外部循环设定遍历次数,数组5个元素最多需要4次遍历,因为每次决定数组的一个位置,最后一个不用比较。(n-1)#include<iostream>//selection sort using namespace std;void display(int array[], int n){ for(int count=0;count<n;count++) //
阅读全文
摘要:冒泡排序冒泡法排序就是将需要排序内容从第一个元素开始,与相邻元素比较大小,将较大的/较小的放到后边,第一次遍历最后一个元素是最大/最小。依次类推,第二次将倒数第二大/第二小元素放到倒数第二的位置。直到全部元素按照顺序排列。比如5个元素:第一次遍历 需要比较4次(相邻元素之间比较,最坏情况)第二次遍历 比较3次...第四次遍历 比较1次所以算法复杂度是n*(n-1)/2Bubble sort 1 #include<iostream> 2 using namespace std; 3 void display(int array[], int n) 4 { 5 for(int cou.
阅读全文