《演算法 C語言實現》 第一部分 連通性問題解決演算法

2021-10-10 09:36:42 字數 581 閱讀 2019

解決連通問題演算法

快速-查詢演算法的一種簡單實現。

快速-查詢演算法結構

該演算法的基礎是乙個整型陣列,當且僅當第p個元素和第q個相等時,p和q是連通的。

初始時,陣列中的第i個元素的值為i,0<=i#define n 10000

main()

{ int i,p,q,t,id[n];

for(i = 0; i圖示例

性質:求解n個物件的連通性問題,如果執行m次合併操作,那麼快速查詢演算法至少執行mn條指令。

對於每個合併操作,for迴圈迭代n次。每次迭代至少需要執行一次指令。

當m和n的值較小時,開銷並不會很大,但是當有數百個物件,數億個輸入時,在用快速查詢演算法求解則不行。

下圖是上圖示例的圖形化表示。

第一部分 C 語言

第一部分 c 語言 330頁 10 33天 第一章 c 與.net框架 一 net框架 cts common type system 公共型別庫 cls common language system 公共語言規範 fcl framework class library 框架型別庫 clr提供程式執行...

演算法第一部分(1)

1.學習演算法,最好先了解陣列,鍊錶,堆,棧等線性結構 2.對遞迴,遍歷,演算法複雜度有著常識性理解 3.主要包括三方面的知識 線性 主要是排序 樹形結構 圖形結構 定義 選擇排序每次都從剩下的n i 個元素找到最小的數,並與i位置的數交換位置。public void selectionsort t...

C 第一部分總結

c 一 一丶復合型別 1指標與引用 一 指標 1 指標的特點 指標持有乙個物件的位址,稱為指標 指向 該物件 通過指標可以間接操縱它指向的物件 2 指標的定義 型如int a char a,b 3 取位址符 使用取位址符 型如int pi ival 4 特殊 void型別 可以持有任何型別的位址值,...