熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> 數據結構 >> 正文

數據結構考研分類復習真題 第十章 答案[36]

2013-11-15 15:17:24  來源: 數據結構 

   int  Partition(RecType R[]int lint h)
  //一趟快速排序算法樞軸記錄到位並返回其所在位置
  { int i=l; j=h; R[] = R[i]; x = R[i]key;
  while(i<j)
  { while(i<j && R[j]key>=x)  j;
  if (i<j) R[i] = R[j];
  while(i<j && R[i]key<=x)  i++;
  if (i<j) R[j] = R[i];
  }//while
  R[i]=R[];
  return  i;
  }//Partition

   [題目分析]以Kn為樞軸的一趟快速排序將上題算法改為以最後一個為樞軸先從前向後再從後向前
  int  Partition(RecType K[]int lint n)
  { //交換記錄子序列K[ln]中的記錄使樞軸記錄到位並返回其所在位置
  //此時在它之前(後)的記錄均不大(小)於它
  int i=l; j=n; K[] = K[j]; x = K[j]key;
  while(i<j)
  { while(i<j && K[i]key<=x)  i++;
  if (i<j) K[j]=K[i];
  while(i<j && K[j]key>=x)  j;
  if (i<j) K[i]=K[j];
  }//while
  K[i]=K[]; return  i;
  }//Partition

[]  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  


From:http://tw.wingwit.com/Article/program/sjjg/201311/23177.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.