設計乙個演算法,刪除遞增有序鍊錶中值大於mink且小於maxk的所有元素。
找到小於等於mink的結點和大於等於maxk的結點,進行連線即可。
/*
設計乙個演算法,刪除遞增有序鍊錶中值大於mink且小於maxk的所有元素。
*/#include
using
namespace std;
typedef
struct lnode lnode,
*linklist;
void
createlist
(linklist &l)
}void
printlist
(linklist l)
cout << endl;
}void
deleteelement
(linklist &l,
int mink,
int maxk)
while
(p && p-
>data < maxk)
q = pre-
>next;
pre-
>next = p;
while
(q != p)
}int
main()
資料結構 演算法設計題 拆分鍊錶
設計演算法將乙個帶頭結點的單鏈表a分解為兩個具有相同結構的鍊錶b和c,其中b表的結點為a表中值小於零的結點,而c表中的結點為a表中值大於零的結點。鍊錶a中的元素為非零整數,要求b c表利用a表的結點。鍊錶b使用鍊錶a的頭結點,鍊錶c申請乙個新的頭結點。對鍊錶a進行遍歷的同時進行拆解,可以使用前插法或...
資料結構 演算法設計題 陣列迴圈左移
設將n個整數存放到一維陣列r中。試設計乙個在時間和空間兩方面盡可能高效的算,將r中儲存的序列迴圈左移動p個位置,即將r中的資料由 x0,x1,x2,xn 1 變換為 xp,xp 1,xn 1,x0,xp 要求 給出演算法的基本設計思想 說明演算法的時間複雜度和空間複雜度。先將n個資料原地逆置,得到x...
php演算法題(資料結構)
單鏈表的操作 public function index 單向鍊錶節點類 class node 單鏈表 class singlelink 插入乙個節點 public function addnode node node next current next current next node 獲取鍊錶...