亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? qhncxf_paixu.h

?? 這是一個排序算法的應用
?? H
字號:
#include <stdlib.h>
#include <stdio.h>
//順序表表示的存儲結構
#define MAXNUM 100000
typedef int KeyType;
typedef int DataType;
typedef struct      
{                    
  KeyType key;        //排序碼字段
  DataType info;      //記錄的其他字段
}RecordNode;
typedef struct
{
  RecordNode record[MAXNUM];
  int n;              //n為文件中的記錄個數,n<=MAXNUM
}SortObject;
/**************************************************/
/*                Shell插入排序算法               */
/**************************************************/  
void shellSort(SortObject &pvector,int &com,int &mov)
{
   int i,j,increment;
    RecordNode temp;
     for(increment=4;increment>0;increment/=2)
      /*increment 為本趟Shell排序增量*/
      {
        for(i=increment;i<pvector.n;i++)
        {
		   
           temp=pvector.record[i];    /*保存待插入記錄Ri*/
           j=i-increment;
		   com++;
           while(j>=0&&temp.key<pvector.record[j].key)  /*查找插入位置*/
           {  
			  mov++;
              pvector.record[j+increment]=pvector.record[j]; /*記錄后移*/
              j-=increment;
			  if(j>=0)
			    com++;
           }
           pvector.record[j+increment]=temp;/*插入記錄Ri*/
        }
      }
}
/******************************************/
/*               堆排序算法               */
/******************************************/
/*篩選算法*/
#define leftChild(i) 2*(i)+1
void sift(SortObject &pvector,int i,int n,int &com,int &mov)
{
   int child;
   RecordNode temp;
   temp=pvector.record[i];
   child=leftChild(i);/*Rchild是R0的左子女*/
   while(child<n)
   {
      if(child<n-1)
	  {   com++;
		  if(pvector.record[child].key<pvector.record[child+1].key)
            child++;/*child指向Ri的左、右子女中排序碼較大的結點*/
	  }
	   com++;
      if(temp.key<pvector.record[child].key)
      {
         pvector.record[i]=pvector.record[child];
         /*將Rchild換到父結點位置,進入下一層繼續調整*/
		 mov++;
         i=child;
         child=leftChild(i);
      }
      else break;/*調整結束*/
   }
   pvector.record[i]=temp;/*將記錄Ri放入正確位置*/
}
/*堆排序算法*/
void heapSort(SortObject &pvector,int &C,int &M) /*對記錄R0到Rn-1進行堆排序*/
{
   int i,n;
   RecordNode temp;
   n=pvector.n;
   for(i=n/2-1;i>=0;i--)
     sift(pvector,i,n,C,M);  /*建立初始堆*/
   for(i=n-1;i>0;i--)    /*進行n-1趟堆排序*/
   {
	   M++;
      temp=pvector.record[0];  /*當前堆頂記錄和最后一個記錄互換*/
      pvector.record[0]=pvector.record[i];
      pvector.record[i]=temp;
        sift(pvector,0,i,C,M) ;  /*從R0到Ri-1重建堆*/
   }
}
/*****************************************/
/*              快速排序算法             */
/*****************************************/
void quickSort(SortObject &pvector,int l,int r,int &com,int &res)
{
  int i,j;
  RecordNode temp;
  if(l>=r)
    return;/*只有一個記錄或無記錄,則無需排序*/
  i=l;j=r;
  temp=pvector.record[i];
  while(i!=j)
  {
	  com++;
      while((pvector.record[j].key>=temp.key)&&(j>i))
	  {
		  j--;/*從右向左掃描,查找第l個排序碼小于temp.key的記錄*/
		  com++;
	  }
      if(i<j)
         pvector.record[i++]=pvector.record[j];
	     res++;
		 com++;
      while((pvector.record[i].key<=temp.key)&&(j>i))
	  {
		  i++;/*從左向左掃描,查找第l個排序碼大于temp.key的記錄*/
		  com++;
	  }
      if(i<j)
          pvector.record[j--]=pvector.record[i];
	      res++;
  }
  pvector.record[i]=temp;    /*找到Ri的最終位置*/
  quickSort(pvector,l,i-1, com, res);  /*遞歸處理左區間*/
  quickSort(pvector,i+1,r,com,res);  /*遞歸處理右區間*/
}
/*****************************************/
/*               冒泡排序算法            */
/*****************************************/
void bubbleSort(SortObject &pvector,int &com,int &mov )
{
   int i,j,noswap;
   RecordNode temp;
   for(i=0;i<pvector.n;i++)            /*做n-1次起泡*/
   {
      noswap=TRUE;
      for(j=0;j<pvector.n-i-1;j++)    /*置交換標志*/
	  {
		com++;
        if(pvector.record[j+1].key<pvector.record[j].key) /*從前向后掃描*/
        {
		  mov++;
          temp=pvector.record[j];                        /*交換記錄*/
          pvector.record[j]=pvector.record[j+1];
          pvector.record[j+1]=temp;
          noswap=FALSE;
        }
	  }
      if(noswap)
      break;  /*本趟起泡未發生記錄交換,算法結束*/
   }
}
/**************************************************/
/*               二分法插入排序算法               */
/**************************************************/  
void binSort (SortObject &pvector,int &com,int &mov)
{
	int i,j,left,mid,right;
	RecordNode temp;
    for (i=1;i<pvector.n;i++)
	{
	   temp=pvector.record[i];
	   left=0;right=i-1;         //置已排序區間的下、上界初值
	   while(left<=right)
	   {
		 mid=(left+right)/2;  //mid指向已排序區間的中間位置
		 if(temp.key<pvector.record[mid].key)
		 { com++;right=mid-1;}  //插入元素應在左子區間
		 else
			left=mid+1;      //插入元素應在右子區間
	   }
	    for(j=i-1;j>=left;j--)
		{
		pvector.record[j+1]=pvector.record[j];
		mov++;
		}
	    if(left!=i) 
		pvector.record[left]=temp;//將排序碼大于Ki的記錄后移
	}
}
/**************************************************/
/*              直接插入排序算法                  */
/**************************************************/  
void insertSort(SortObject &pvector,int &com,int &mov)
{ int i,j;                
  RecordNode temp;               
   for(i=1;i<pvector.n;i++)     //依次插入記錄R1、R2\......
  {
	  temp=pvector.record[i];
	  j=i-1;
	  com=i;
	  while((temp.key<pvector.record[j].key)&&(j>=0))//由后向前找插入位置
	  {
		  mov++;
		  pvector.record[j+1]=pvector.record[j];    //將排序碼大于Ki的記錄后移
		  j--;
	  }
	  if(j!=(i-1)) pvector.record[j+1]=temp;
  }
   com+=mov;
}
/*****************************************/
/*            直接選擇排序算法           */
/*****************************************/
void SelectSort(SortObject &pvector,int &com,int &mov)
{
	int i,j,k;
	RecordNode temp;
	 for(i=0;i<pvector.n;i++)//做n-1趟選擇排序
	 {
		 k=i;
		 for(j=i+1;j<pvector.n;j++)//在無序區內找出排序碼最小的記錄Rk;
		 {
			 com++;              //比較次數的統計
			 if(pvector.record[j].key<pvector.record[k].key) 
				 k=j;
		 }
		 if(k!=i)
		 {
			 mov++;               //移動次數的統計
			 temp=pvector.record[i];
			 pvector.record[i]=pvector.record[k];
			 pvector.record[k]=temp;
		 }
	 }
}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
a4yy欧美一区二区三区| 欧美一级二级三级乱码| 9191成人精品久久| 亚洲国产精品成人久久综合一区| 亚洲一区二区三区小说| 国产成人日日夜夜| 91精品国产手机| 亚洲精品一二三四区| 福利一区二区在线| 精品久久免费看| 奇米影视在线99精品| 在线视频国产一区| 国产精品国模大尺度视频| 久久爱www久久做| 7777精品伊人久久久大香线蕉 | 亚洲电影中文字幕在线观看| 国产成人一区在线| 欧美tickling挠脚心丨vk| 亚洲综合一区二区三区| 99re成人在线| 国产精品国产精品国产专区不蜜| 韩国av一区二区| 精品对白一区国产伦| 久久99精品国产.久久久久久| 91麻豆精品国产91久久久资源速度 | 蜜乳av一区二区三区| 欧美最新大片在线看| 亚洲欧美国产77777| 成人va在线观看| 亚洲国产精品成人综合 | 亚洲色图在线视频| 99这里只有精品| 欧美国产日产图区| 99视频有精品| 亚洲精品久久7777| 欧美调教femdomvk| 日韩电影在线观看网站| 在线成人小视频| 蜜臀91精品一区二区三区| 精品日韩av一区二区| 国产自产2019最新不卡| 国产日韩欧美一区二区三区乱码| 东方aⅴ免费观看久久av| 国产精品妹子av| 色婷婷av一区二区三区gif | 一区二区三区不卡视频| 欧美性高清videossexo| 亚洲国产精品久久久久婷婷884 | 免费观看日韩av| 久久久精品国产99久久精品芒果 | 久久成人羞羞网站| 国产视频一区二区在线观看| 成人黄色综合网站| 亚洲一区国产视频| 欧美美女直播网站| 国产成人av电影在线观看| 1区2区3区欧美| 欧美一区二区国产| av一区二区三区| 亚洲1区2区3区视频| 久久人人97超碰com| 91美女蜜桃在线| 免费精品99久久国产综合精品| 国产欧美日韩视频一区二区| 精品毛片乱码1区2区3区| 国产成人av一区二区| 亚洲综合清纯丝袜自拍| 久久色成人在线| 在线观看欧美精品| 激情av综合网| 亚洲精品水蜜桃| 欧美精品一区二区三区视频| 99精品国产视频| 看电影不卡的网站| 亚洲美女偷拍久久| 久久久美女毛片| 欧美精品粉嫩高潮一区二区| av毛片久久久久**hd| 看电视剧不卡顿的网站| 一区二区免费在线| 国产精品美女久久久久久久| 日韩一区和二区| 色噜噜狠狠色综合欧洲selulu| 国内成人免费视频| 午夜精品成人在线| 亚洲激情校园春色| 国产日韩欧美精品一区| 日韩欧美一二三| 精品视频在线免费| 色综合天天综合网天天看片| 国产精品一品二品| 经典三级一区二区| 日日夜夜免费精品| 亚洲第一综合色| 亚洲最新视频在线播放| 国产精品久久久久天堂| 26uuu另类欧美| 日韩欧美高清一区| 日韩一区二区三区视频在线观看| 欧美在线免费观看亚洲| 色嗨嗨av一区二区三区| 91丨porny丨在线| 97se亚洲国产综合在线| 福利一区福利二区| 成人午夜视频网站| 成人小视频在线观看| 国产精品一级黄| 国产乱淫av一区二区三区| 激情综合色综合久久综合| 免费在线观看日韩欧美| 蜜臀av性久久久久蜜臀aⅴ四虎 | 伊人开心综合网| 亚洲日本一区二区三区| 《视频一区视频二区| 国产精品国产三级国产普通话三级| 久久久不卡网国产精品二区| 久久精品欧美日韩精品 | 亚洲在线视频网站| 亚洲午夜视频在线| 午夜精品久久久久影视| 免费观看在线色综合| 日本欧美一区二区三区乱码| 乱中年女人伦av一区二区| 美女精品自拍一二三四| 国产一区二区成人久久免费影院| 国产福利91精品| 99精品欧美一区二区三区小说 | 国产精品亲子伦对白| 国产精品嫩草影院av蜜臀| 亚洲色图欧洲色图| 成人高清视频在线观看| 成人福利视频网站| 欧美三区在线观看| 欧美一级免费观看| 精品国产精品一区二区夜夜嗨| 久久亚洲精精品中文字幕早川悠里| 国产三级一区二区三区| 亚洲免费av网站| 日韩高清在线不卡| 国产成人亚洲综合a∨婷婷| 91首页免费视频| 91精品啪在线观看国产60岁| 久久亚洲精品国产精品紫薇| 亚洲欧洲av色图| 日韩电影在线观看一区| 成人动漫视频在线| 91精品黄色片免费大全| 国产欧美日韩精品一区| 亚洲午夜在线观看视频在线| 国模无码大尺度一区二区三区| 成人手机在线视频| 宅男在线国产精品| 国产精品久久久久久久蜜臀| 丝袜美腿亚洲综合| 成人v精品蜜桃久久一区| 欧美一级淫片007| 国产精品传媒在线| 激情久久久久久久久久久久久久久久| 91玉足脚交白嫩脚丫在线播放| 日韩一级大片在线观看| 亚洲美女屁股眼交3| 久久99这里只有精品| 91麻豆国产福利在线观看| 精品国产第一区二区三区观看体验| 自拍偷拍亚洲激情| 国产精品原创巨作av| 91精品国产手机| 亚洲综合视频在线观看| 国产高清不卡一区二区| 欧美一区二区三区成人| 亚洲视频一二区| 成人涩涩免费视频| 欧美大片一区二区三区| 樱桃视频在线观看一区| 懂色av中文字幕一区二区三区| 337p亚洲精品色噜噜狠狠| 亚洲欧洲精品一区二区三区| 国产精品资源在线观看| 精品国产乱子伦一区| 日韩国产在线观看一区| 欧美色视频一区| 亚洲综合男人的天堂| 91麻豆.com| 中文字幕日本乱码精品影院| 国产不卡免费视频| 精品国产乱码久久久久久免费| 奇米在线7777在线精品| 欧美日韩中文精品| 亚洲精品免费播放| 日本二三区不卡| 亚洲欧美另类图片小说| 99精品视频一区| 亚洲美女淫视频| 91黄色激情网站| 亚洲免费看黄网站| 欧美性生活大片视频| 亚洲一区二区三区四区在线免费观看| 色综合欧美在线视频区| 一区二区欧美视频| 欧美日本乱大交xxxxx|