鍊錶與動態陣列的實現方式差不多, 陣列適合快速刪除某個元素 鍊錶則可以快速的儲存陣列並且可以是不連續的
單項鍊表;資料從第乙個指向最後乙個
實現**:
//定義動態鍊錶
class node
public string tostring()
}//建立單項鍊表類
public class linkedlist
public nodecreatnode()
public void printlist(node node)
}}
執行結果:
節點一節點二
節點三節點四
雙向鍊錶:可以指定前面節點也可以指向後面資料的節點
實現鍊錶的增刪改查 等方法
/**
* 節點類
* * @author kowloon
* */
public class node
@override
public string tostring()
}
節點的方法
package trr0717鍊錶;
public class linkedlist1
// 直接在後面增加節點
public void add(string s) else
foot = node;
count++;
} // 直接在後面增加節點
public void add(int index, string s)
node nodenew = new node(s);
node node = getnode(index);
if (index == 0) else
count++;
} // 移除指定位置的節點
public void remove(int index)
if (index == 0)
else
count--;
} // 移除指定內容的節點
public void remove(string s)
node = node.next;
} }// 修改指定地點的節點內容
public void set(int index, string s)
// 取得某個節點物件
public node getnode(int index)
int i = 0;
node node = head;// 把head也放到佇列裡面
while (i < index)
/* system.out.println("第"+i+"個節點:"+node); */
return node;
} // 鍊錶的大小
public int size()
// 遍歷鍊錶的方法
public static void linkedvist(node head)
}}
資料結構 自定義鍊錶
public class linkedlist public node e e public node override public string tostring private node dummyhead private int size public linkedlist 獲取鍊錶中的元素...
Python 自定義雙向鍊錶
class item object 定義鍊錶的每乙個節點 def init self,data,last none next none,self.data data 以字典形式,存放資料 self.last last 用於指向上乙個節點 self.next next 用於指向下乙個節點 class ...
自定義資料結構 MyHashMap
size medium 在學習了資料結構hashmap之後,自己也定義了乙個myhashmap,下面來解析一下myhashmap。size size x large 1 實質為乙個陣列 size size medium 我定義的myhashmap中所使用的資料結構是乙個陣列,資料都儲存在這個陣列中。...