鍊錶的相關實現

2021-09-25 15:56:41 字數 992 閱讀 7005

class node

}public class lianbiao else

head=node;

size++;

}//頭刪

public void popfront()

head=head.next;

if(head==null)else

size--;

}//尾插

void pushback(int val)else

size++;

}//尾刪

void popback()

if(head==last)else

size--;

}//根據下標插入

public void add(int index, int val)

if(index==0)

pushfront(val);

else if(index==size)

pushback(val);

else

size++;

}//根據下標刪除

public void remove(int index)

node pos=getnode(index);

if (index < 0 || index >= size)

if (index == 0) else if (index == size - 1) else

size--;

}//找到下標用引用指向它,這裡根據下標看從前往後找到它快還是從後往前快

private node getnode(int index)

}else

}return pos;

}public int size()

public boolean isempty()

public void reset()

public static void main(string args)

}

單向鍊錶和雙向鍊錶的原理及其相關實現

其實要解決乙個問題得從以下幾個方面入手?即在日常生活中的幾大 w 鍊錶是什麼?它有什麼作用?怎麼實現?在日常生活中有哪些實際應用?只要解決了這些問題,那麼鍊錶這個問題就會很清晰明了了。一 什麼是鍊錶?鍊錶是線性表的一種,所謂的線性表包含順序線性表和鍊錶,順序線性表是用陣列實現的,在記憶體中有順序排列...

實現鍊錶及相關的方法 1

本篇部落格主要是自己實現一下鍊錶。節點類 class listnode 該鍊錶為不帶頭結點的單鏈表,並且裡邊有很多鍊錶基本操作的例項方法,下面一一介紹。public class mysignallist public void addfirst int data else 尾插法 也要分是否為第一次...

實現鍊錶及相關的方法 2

思路 下面提供兩種方法,其實大同小異,但是因為鍊錶的最後乙個元素需要指向空,如果少了這個就會出現問題。所以在方法二中,遍歷的過程就將末尾指向空。方法一 將大的資料放在x的右邊,小的資料放在x的左邊 public listnode parttition int x else else else cur...