亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問c語言運用sort 排序函數,需要的頭文件是什么?

請問c語言運用sort 排序函數,需要的頭文件是什么?

陪伴而非守候 2019-07-09 17:07:20
c語言運用sort 排序函數,需要的頭文件是什么?
查看完整描述

5 回答

?
鴻蒙傳說

TA貢獻1865條經驗 獲得超7個贊

sort(),qsort()排序函數
一.sort函數
常用于C++中,頭文件為algorithm.h。
用法:
sort(first,last)
在[first, last)中的元素進行排序按升序排列

注意:sort默認排序后是升序。如果要想按降序排列,需自己編寫一個比較函數來實現。

函數名...................功能描述

sort........................對給定區間所有元素進行排序
stable_sort.........對給定區間所有元素進行穩定排序
partial_sort........對給定區間所有元素部分排序
partial_sort_copy..........對給定區間復制并排序
nth_element...................找出給定區間的某個位置對應的元素
is_sorted...........................判斷一個區間是否已經排好序
partition...........................使得符合某個條件的元素放在前面
stable_partition............相對穩定的使得符合某個條件的元素放在前面

二、qsort()函數

功 能: 使用快速排序例程進行排序
頭文件:stdlib.h
用 法: void qsort(void *base,int nelem,int width,int (*fcmp)(const void *,const void *));
參數: 1 待排序數組首地址
2 數組中待排序元素數量
3 各元素的占用空間大小
4 指向函數的指針,用于確定排序的順序

查看完整回答
反對 回復 2019-07-13
?
撒科打諢

TA貢獻1934條經驗 獲得超2個贊

stdlib.h頭文件中。
有qsort() //快速排序
qsort函數,也就是快速排序算法,在C的<stdlib>庫中,需加入頭文件#include <cstdlib> 或#include <stdlib.h>。

調用qsort函數需要寫cmp比較函數。
給出按升序排列的例子:
int cmp(const void* a, const void* b)  //注意這里是int{return (int*)a - (int*)b;}

調用:
qsort(a, n, sizeof(int), cmp);//a為數組,n為個數

如果需要按照自己的意愿排列,那么同樣重寫cmp比較函數,就可以完成,和sort函數類似。時間復雜度為O(n log n),但是某些情況要比sort函數好。

查看完整回答
反對 回復 2019-07-13
?
開心每一天1111

TA貢獻1836條經驗 獲得超13個贊

#include <algorithm>
#include <iostream>
using namespace std;
main()
{
int a[11]={2,4,8,5,7,1,10,6,9,3};//a的長度=待排數據個數+1
sort(a,a+10);//對[a,a+10)排序
for(int i=0;i<10;++i) cout<<a[i]<<endl;
}

查看完整回答
反對 回復 2019-07-13
  • 5 回答
  • 0 關注
  • 3211 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號