网站大量收购闲置独家精品文档,联系QQ:2885784924

程序代码集合.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
程序代码集合

//快速排序法 #include iostream #include iomanip #include time.h #include stdlib.h #define MIN -65536 using namespace std; int * Create_Array (int *, int); void Print_Array (int *, int); void Exchange (int *, int, int); int Partition (int *, int, int); void Quick_Sort (int *, int, int); int main (void) { int *Array = NULL; int number; cout 生成随机数个数: ; cin number; Array = Create_Array (Array, number + 1); cout 排序前: endl; Print_Array (Array, number + 1); cout endl; Quick_Sort (Array, 1, number); cout 排序后: endl; Print_Array (Array, number + 1); cout endl; return 0; } int * Create_Array (int *Array, int num) { srand ((unsigned)time (NULL)); Array = new int [num]; Array[0] = MIN; for (int i = 1; i num; ++ i) Array[i] = rand() % 9999 + 1; return Array; } void Print_Array (int *Array, int num) { int count = 0; for (int i = 1; i num; ++ i) { cout setw(7) Array[i]; ++ count; if (count % 10 == 0) cout endl; } } void Exchange (int *Array, int i, int j) { int temp; temp = Array[i]; Array[i] = Array[j]; Array[j] = temp; } int Partition (int *Array, int p, int r) { int x = Array[r]; int i = p - 1; int temp; for (int j = p; j r; ++ j) { if (Array[j] = x) { ++ i; Exchange (Array, i, j); } } Exchange (Array, i + 1, r); return i + 1; } void Quick_Sort (int *Array, int p, int r) { int q; if (p r) { q = Partition (Array, p, r); Quick_Sort (Array, p, q - 1); Quick_Sort (Array, q + 1, r); } } //链表逆序输出 #include iostream #include string using namespace std; struct Node { char name[3]; Node * next; Node(const char* p) { strcpy(name,p); next=0; } }; //将某个链表逆序 void ReserseList(Node * pHead, Node * pTail) { Node *p1=pHead; if(p1==0) //首指针为空,表示空链表 { pTail=0; return; } Node *p2=p1-next; if(p2==0) //首指针的下一个节点为空,表示只有一个节点 { pTail=0; return; } //至少有两个不为空的节点 Node *p3=0; while(p2!=0) { p3=p2-next; p2-next=p1; p1=p2; p

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档