資料結構與演算法分析 c語言描述練習自答(第二章)

2021-10-06 19:36:28 字數 4471 閱讀 6950

}陣列已經排序,採用對分查詢,執行時間o(logn)。

a.當陣列內元素個數小於等於2時,遞迴終止

b.

#include

intfindchief

(int a,

int n)

if(n%2==

1)}if

((mid=

findchief

(b,j)

)==int_max)

return temp;

else

return mid;

}else

}return

findchief

(b,j);}

}

n是奇數時用乙個中間量儲存a【n-1】,繼續尋找前面陣列的主要元素,如果找到就返回找到的那個,找不到就返回儲存的這個中間量。

e.c

#include

intfindchief

(int a,

int n)

else

if(chief==a[i]

) count++

;else

count--;}

if(count>0)

return chief;

else

return int_max;

}

不行,假設low=1,high=2,這是mid=1,帶人low=mid,那麼low依然是1,迴圈無法結束。

不行,遞迴無法結束。

資料結構與演算法分析 C語言描述

第一種方法,先進行排序,再返回位置k上的元素。簡單排序問題 第二種方法,先將前k個元素讀入,再將剩下的元素逐個讀入,如果新元素大於陣列中第k個元素就找到他合適的位置並將陣列中的乙個元素擠出。第三種方法,利用快排的特點 假設預設公升序排序 每一次快排操作都能確定乙個數在排序結果中的最終固定位置,即該位...

資料結構與演算法分析 c 語言描述

編寫帶有下列宣告的兩個例程 void permute string str void permute char str,int low,int high 第乙個例程是個驅動程式,它呼叫第二個例程並顯示string str中字元的所有排列。例如,str是 abc 那麼輸出的串則是abc,acb,bac...

《資料結構與演算法分析(C 語言描述)》

第1章 uml教程 更多軟體恐怖故事 nist新聞稿 軟體錯誤每年給美國經濟造成595億美元的損失 nist報告本身 pdf 第2章 ieee對實數的反感 c 的按位運算子 第3章 工會 記憶體結構 第5章模式匹配 資料加密 第9章用位集實現集 有關valarrays的更多資訊 第10章 用於解析表...