链表基本操作与排序(c语言)

您所在的位置:网站首页 怎么用c语言排序 链表基本操作与排序(c语言)

链表基本操作与排序(c语言)

2024-06-11 04:31| 来源: 网络整理| 查看: 265

(){

   clock_t start, finish;;//起始 结束时间     double duration;//总计时间     ListNode Head;    ListNode List;printf("\n\n\n");  printf("-------------操作选项-----------\n");  printf("1:返回菜单 \n");  printf("2:退出程序 \n");  printf("3:初试化,产生随机数 \n");  printf("4:打印单链表 \n");  printf("5:插入元素 \n");  printf("6:删除j位置的元素 \n");  printf("7:查找值为k的节点位置 \n");  printf("8:对链表进行冒泡排序 \n");  printf("9:对链表进行快速排序 \n");  printf("10:对链表进行合并排序 \n");  printf("--------------------------------\n"); int x,n,i,e,k,j; while (1) {    printf("按数字键选择要执行的操作: ");  scanf("%d",&x);  printf("\n");

  //输入2跳出循环,退出程序  if(x==2)      break;

  switch(x)  {  case 1:  break;   //输入1,跳出switch语句,进入下一次循环  case 3:  {printf("请输入数字n(随机产生n个数):");scanf("%d",&n);  Head=CreatListTail(n);  List = Head -> next;   break;      }   case 4:{       dispLinkList(List);    break;   }     case 5:{       printf("插入给i位置的元素为e \n");       printf("请输入i和e(中间用空格隔开)\n");        scanf("%d %d",&i,&e);       InsLinkList(List,i,e);       break;   }       case 6:{    printf("删除j位置的元素 \n");    scanf("%d",&j);       DelLinkList(List,j);    break;   }      case 7:{    printf("查找值为k的节点位置  \n");    printf("请输入k\n");     scanf("%d",&k);       //LocLinkList(List,k);       printf("%d",LocLinkList(List,k)) ;    break;   }    case 8:{    printf("对链表进行冒泡排序  \n");

   start = clock();   BubbleSort(List);   finish = clock();    duration = (double)(finish - start) / CLOCKS_PER_SEC;   printf( "时间为 %f seconds\n", duration );    break;   }     case 9:{    printf("对链表进行快速排序  \n");    start = clock();    quickSort(List);    finish = clock();     duration = (double)(finish - start) / CLOCKS_PER_SEC;    printf( "时间为 %f seconds\n", duration );    break;   }       case 10:{    printf("对链表进行合并排序  \n");

       start = clock();    Mergesort(&List);

   finish = clock();   duration = (double)(finish - start) / CLOCKS_PER_SEC;   printf("时间为 %f seconds\n", duration );

    break;   } 

  default:  //数字输入错误,跳出siwtch语句,进入下一次循环      printf("输入的数字不正确\n");      break;  } } return 0;}



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3