[PTA] 資料結構與演算法題目集 6-10 二分查詢
Position BinarySearch(List L, ElementType X) { int beg = 1; int end = L->Last; while (beg <= end) { int mid = (beg + end) / 2; if (L->Data[mid] == X) return mid; else if (L->Data[mid] < X) beg = mid + 1; else end = mid - 1; } return NotFound; }
相關推薦
[PTA] 資料結構與演算法題目集 6-10 二分查詢
Position BinarySearch(List L, ElementType X) { int beg = 1; int end = L->Last; while (beg <= end) { int mid = (beg + end) / 2
[PTA] 資料結構與演算法題目集 6-8 求二叉樹高度
6.8 二叉樹高度 int GetHeight(BinTree BT) { if (BT == NULL) return 0; int leftH = GetHeight(BT->Left); int rightH = GetHeight(BT->Rig
[PTA] 資料結構與演算法題目集 6-1 單鏈表逆轉
List Reverse(List L) { List p, q; p = L; q = L; L = NULL; while (p) { p = p->Next; q->Next = L; L = q
[PTA] 資料結構與演算法題目集 6-12 二叉搜尋樹的操作集
唯一比較需要思考的刪除操作: 被刪除節點有三種情況: 1、葉節點,直接刪除 2、只有一個子節點,將子節點替換為該節點,刪除該節點。 3、有兩個子節點,從右分支中找到最小節點,將其值賦給被刪除節點的位置,接著刪除這個最小節點 // 函式Insert將X插入二叉搜尋樹BST並返
PTA 資料結構與演算法題目集(中文)6-4 鏈式表的按序號查詢
6-4 鏈式表的按序號查詢(10 分)本題要求實現一個函式,找到並返回鏈式表的第K個元素。函式介面定義:ElementType FindKth( List L, int K ); 其中List結構定義如
PTA 資料結構與演算法題目集(中文)6-6 帶頭結點的鏈式表操作集
6-6 帶頭結點的鏈式表操作集(20 分)本題要求實現帶頭結點的鏈式表操作集。函式介面定義:List MakeEmpty(); Position Find( List L, ElementType X
PTA 資料結構與演算法題目集(中文)6-6
本題要求實現帶頭結點的鏈式表操作集。 函式介面定義: List MakeEmpty(); Position Find( List L, ElementType X ); bool Insert( List L, ElementType X, Position P ); bool Delete( List
PTA 資料結構與演算法題目集(中文)6-2 順序表操作集
6-2 順序表操作集(20 分)本題要求實現順序表的操作集。函式介面定義:List MakeEmpty(); Position Find( List L, ElementType X ); bool
PTA 資料結構與演算法題目集(中文)6-1 單鏈表逆轉
6-1 單鏈表逆轉(20 分)本題要求實現一個函式,將給定的單鏈表逆轉。函式介面定義:List Reverse( List L ); 其中List結構定義如下:typedef struct Node *
PTA 資料結構與演算法題目集(中文) 6-9 二叉樹的遍歷
6-9 二叉樹的遍歷(25 分)本題要求給定二叉樹的4種遍歷。函式介面定義:void InorderTraversal( BinTree BT ); void PreorderTraversal( Bi
PTA 資料結構與演算法題目集(中文)6-7 在一個數組中實現兩個堆疊
6-7 在一個數組中實現兩個堆疊(20 分)本題要求在一個數組中實現兩個堆疊。函式介面定義:Stack CreateStack( int MaxSize ); bool Push( Stack S, E
PTA 資料結構與演算法題目集(中文)6-5
本題要求實現鏈式表的操作集。 函式介面定義: Position Find( List L, ElementType X ); List Insert( List L, ElementType X, Position P ); List Delete( List L, Position P ); 其中Li
PTA 資料結構與演算法題目集(中文)6-2
本題要求實現順序表的操作集。 函式介面定義: List MakeEmpty(); Position Find( List L, ElementType X ); bool Insert( List L, ElementType X, Position P ); bool Delete( List L,
PTA 資料結構與演算法題目集(中文)6-1
本題要求實現一個函式,將給定的單鏈表逆轉。 函式介面定義: List Reverse( List L ); 其中List結構定義如下: typedef struct Node *PtrToNode; struct Node { ElementType Data; /* 儲存結點資料 */
PTA 資料結構與演算法題目集(中文)6-9
void InorderTraversal( BinTree BT ) { BinTree stack[50]; int top=-1; BinTree p=BT; while(p!=NULL||top!=-1) { while(p) { stack[++top
PTA 資料結構與演算法題目集(中文)6-3 求鏈式表的表長
6-3 求鏈式表的表長(10 分)本題要求實現一個函式,求鏈式表的表長。函式介面定義:int Length( List L ); 其中List結構定義如下:typedef struct LNode *P
PTA 資料結構與演算法題目集(中文)7-37 模擬EXCEL排序(25 分)排序
Excel可以對一組紀錄按任意指定列排序。現請編寫程式實現類似功能。 輸入格式: 輸入的第一行包含兩個正整數N(≤105) 和C,其中N是紀錄的條數,C是指定排序的列號。之後有 N行,每行包含一條學生紀錄。每條學生紀錄由學號(6位數字,保證沒有重複的學號)、姓名(不
PTA資料結構與演算法題目集(中文)4-12 二叉搜尋樹的操作集 (30分)
本題要求實現給定二叉搜尋樹的5種常用操作。 函式介面定義: BinTree Insert( BinTree BST, ElementType X ); BinTree Delete( BinTree BST, ElementType X ); Position Fin
PTA 資料結構與演算法題目集(中文)7-33 地下迷宮探索(30 分)dfs
地道戰是在抗日戰爭時期,在華北平原上抗日軍民利用地道打擊日本侵略者的作戰方式。地道網是房連房、街連街、村連村的地下工事,如下圖所示。 我們在回顧前輩們艱苦卓絕的戰爭生活的同時,真心欽佩他們的聰明才智。在現在和平發展的年代,對多數人來說,探索地下通道或許只是一種娛樂或者益
PTA 資料結構與演算法題目集(中文) 7-35 城市間緊急救援(25 分) 迪傑斯特拉演算法
7-35 城市間緊急救援(25 分) 作為一個城市的應急救援隊伍的負責人,你有一張特殊的全國地圖。在地圖上顯示有多個分散的城市和一些連線城市的快速道路。每個城市的救援隊數量和每一條連線兩個城市的快速道路長度都標在地圖上。當其他城市有緊急求助電話給你的時候,你的任務是帶領你的