鎻掑叆鎺掑簭
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了鎻掑叆鎺掑簭相关的知识,希望对你有一定的参考价值。
鏍囩锛?a href='http://www.mamicode.com/so/1/%e7%ac%ac%e4%b8%80%e4%b8%aa' title='绗竴涓?>绗竴涓?/a> number getc 閫氳繃 code 鍘熺悊 etc out
瀹氫箟
瀹冪殑宸ヤ綔鍘熺悊鏄€氳繃鏋勫缓鏈夊簭搴忓垪锛屽浜庢湭鎺掑簭鏁版嵁锛屽湪宸叉帓搴忓簭鍒椾腑浠庡悗鍚戝墠鎵弿锛屾壘鍒扮浉搴斾綅缃苟鎻掑叆銆傛彃鍏ユ帓搴忓湪瀹炵幇涓婏紝閫氬父閲囩敤in-place鎺掑簭锛堝嵆鍙渶鐢ㄥ埌** O(1) **鐨勯澶栫┖闂寸殑鎺掑簭锛夛紝鍥犺€屽湪浠庡悗鍚戝墠鎵弿杩囩▼涓紝闇€瑕佸弽澶嶆妸宸叉帓搴忓厓绱犻€愭鍚戝悗鎸綅锛屼负鏈€鏂板厓绱犳彁渚涙彃鍏ョ┖闂淬€?/p>
涓€鑸潵璇达紝鎻掑叆鎺掑簭閮介噰鐢╥n-place鍦ㄦ暟缁勪笂瀹炵幇銆傚叿浣撶畻娉曟弿杩板涓嬶細
1銆佷粠绗竴涓厓绱犲紑濮嬶紝璇ュ厓绱犲彲浠ヨ涓哄凡缁忚鎺掑簭
2銆佸彇鍑轰笅涓€涓厓绱狅紝鍦ㄥ凡缁忔帓搴忕殑鍏冪礌搴忓垪涓粠鍚庡悜鍓嶆壂鎻?br>
3銆佸鏋滆鍏冪礌锛堝凡鎺掑簭锛夊ぇ浜庢柊鍏冪礌锛屽皢璇ュ厓绱犵Щ鍒颁笅涓€浣嶇疆
4銆侀噸澶嶆楠?锛岀洿鍒版壘鍒板凡鎺掑簭鐨勫厓绱犲皬浜庢垨鑰呯瓑浜庢柊鍏冪礌鐨勪綅缃?br>
5銆佸皢鏂板厓绱犳彃鍏ュ埌璇ヤ綅缃悗
6銆侀噸澶嶆楠?~5
鎬濊矾浠g爜
#include <iostream>
#include <cstring>
#include <cstdio>
#include <conio.h>
using namespace std;
const int SIZE = 10000;
void fInsertionSort(int *pData, int size);
int main()
{
int number;
int fDate[SIZE] = { 0 };
cout << "璇疯緭鍏ラ渶瑕佽繘琛屾帓搴忕殑涓暟锛?;
cin >> number;
for (int i = 0; i < number; i++)
cin >> fDate[i];
cout << "鈥斺€斺€斺€斺€斺€斺€斺€斺€斺€斺€斺€斺€斺€斺€斺€? << endl;
fInsertionSort(fDate, number);
cout << "绛旀鏄細" << endl;
for (int i = 0; i < number; i++)
cout << fDate[i] << 鈥?鈥?
_getch();
return 0;
}
void fInsertionSort(int *pData, int size)
{
int i, j, key;
for (i = 1; i < size; i++)
{
key = pData[i];
j = i - 1;
while ((j >= 0) && (pData[j] > key))
{
pData[j + 1] = pData[j];
j--;
}
pData[j + 1] = key;
for (int i = 0; i < size; i++)
cout << pData[i] << 鈥?鈥?
cout << endl;
}
}
以上是关于鎻掑叆鎺掑簭的主要内容,如果未能解决你的问题,请参考以下文章