無聊寫了乙個鍊錶。。
listtable
1 typedef struct node以下是測試程式:2 inode;78
9 typedef struct list
10 listtable;
1314
15 inode* listsearch(listtable* table,int x)
16 22
2324
void listinsert(listtable* table,int x)
25 34
else
35
40 }
4142
43void listdelete(listtable* table,int x)
44
57 }
5859
void listshow(listtable* table)
60 67 cout <68 }
main
1tips:int main()
2 11 listshow(lt);
12 cout <
entry the int you wanna delete:
";13 cin.clear();//
important
14 cin >>del;
1516 listdelete(lt,del);
17 listshow(lt);
18 system("
pause
");19
return
0;
20 }
1、關於while(cin>>)結束迴圈的問題
對於cin這個istream物件來說,當從鍵盤輸入一系列字元並按回車之後,這些字元首先被送到輸入緩衝區,然後cin就會檢測輸入緩衝區中是否有可讀的資料,cin也會檢查是否有流結束標誌ctrl+z和ctrl+d。有兩種檢查方式:阻塞式和非阻塞式。windows下採用ctrl+z,linux下採用ctrl+d。
阻塞式指只有在回車按下之後才檢查,非阻塞式指按下ctrl+d後立即響應。
注意,當資料後面緊接著ctrl+d或ctrl+z,按下回車cin會處理輸入緩衝區資料,而忽略結束流標誌,之後回車後立即輸入結束流標誌才有效。
2、cin.clear()
將流cin中的所有狀態值都重設成有效狀態。
鍊錶 鍊錶劃分 簡單
描述 給定乙個單鏈表和數值x,劃分鍊錶使得所有小於x的節點排在大於等於x的節點之前。你應該保留兩部分內煉表節點原有的相對順序。您在真實的面試中是否遇到過這個題?樣例給定鍊錶 1 4 3 2 5 2 null,並且 x 3 返回 1 2 2 4 3 5 null 題目鏈結 分析 方法一 將所有小於給定...
鍊錶 鍊錶求和 簡單
描述 你有兩個用鍊錶代表的整數,其中每個節點包含乙個數字。數字儲存按照在原來整數中相反的順序,使得第乙個數字位於鍊錶的開頭。寫出乙個函式將兩個整數相加,用鍊錶形式返回和。您在真實的面試中是否遇到過這個題?是 樣例給出兩個鍊錶 3 1 5 null 和 5 9 2 null,返回 8 0 8 null...
順序表及鍊錶
順序表 將表中元素乙個接乙個的存入一組連續的儲存單元中,這種儲存結構是順序結構。利用陣列單元的物理位置上的 優點 儲存空間連續,允許元素隨機訪問 缺點 長度固定,在分配記憶體之前要先確定好陣列長度,致使可能造成空間浪費 單鏈表 用一組任意的儲存單元存放線性表的元素,只包含指向下乙個節點的指標,只能單...