閱讀850 返回首頁    go 阿裏雲 go 技術社區[雲棲]


sort()

sort()函數是對連續空間排序,最好用數組首地址和偏移量這種寫法,如果用 & 地址就必須完全包括進去不然就出現各種奇怪的結果:

頭文件<iostream> 和 <algorithm>

【sort排序結構體】請看poj 1543 Perfect Cubes【sort排序結構體】


用 首地址+偏移量 【正確】

#include<iostream>
#include <algorithm>

using namespace std;

int main()
{
    int a[5]={6,5,87,7,9};

	sort(a,a+5);		//最好用這個
	//sort(&a[0],&a[5]);

	int i;
	for(i=0;i<5;i++)
		printf("%d ",a[i]);

	return 0;
}


用 & 地址寫法:

sort(&a[0],&a[5]);【正確】



sort(&a[0],&a[4]); 【錯誤】



sort(&a[1],&a[5]); 【錯誤】



sort 對於 字符串也可以很好的排序

#include<iostream>
#include <algorithm>

using namespace std;

int main()
{
    char a[6]="bcdae";
	printf("%s\n",a);

	int i;
	for(i=0;i<5;i++)
		printf("%c ",a[i]);
	printf("\n");

	sort(a,a+5);

	for(i=0;i<5;i++)
		printf("%c ",a[i]);

	return 0;
}


最後更新:2017-04-03 14:53:48

  上一篇:go 網絡子係統63_路由子係統處理netlink事件
  下一篇:go 網絡子係統69_路由表輔助程序