鍊錶操作
1、 initlist(l):初始化鍊錶
2、 destroylist(l):刪除連線
3、 clearlist(l):清空鍊錶
4、 &n程式設計客棧bsp; listempty(l):判斷是否為空
5、 listlength(l):鍊錶長度
6、 getelem(l,i):取出元素
7、 locateelem(l,e):判斷e是否在鍊錶中
8、 priorelem(l,i):前驅
9、 nextelem(l,i):後繼
10、 listinsert(l,i,e):插入元素
11、 listdelete(l,i,):刪除元素
順序鍊錶操作
<?php class arraylist
public function initlist()
//刪除鍊錶
public function destorylist()
} //清空鍊錶
public function clearlist()
$this->list=array();
$this->size=0;
} //判斷鍊錶是否為空
public function emptylist()
} //鍊錶長度
public function lenghtlist()
} //取元素
public function getelem($i)
if(isset($this->list)&&is_array($this->list))
} //是否在鍊錶中
public function locateelem($e)
}return 0;
}} //前驅
public function priorelem($i)
if($i==1)
if(isset($this->list)&&is_array($this->list))
} //後繼
public function nextelem($i)
if($i==$this->size)
if(isset($this->list)&&is_array($this->list))
} //插入元素
public function insertlist($i,$e)
if(isset($this->list)&&is_array($this->list))else
$this->list[$i-1]=$e;}}
} //刪除元素
public function deletellist($i)
if(isset($this->list)&&is_array($this->list))else
unset($this->list[$this->size-1]);
}$this->size--;
}} //遍歷
public function printlist()
echo "
"; }
}}?>
鏈式線性表
<?php class linklist
public function initlist()
//刪除鍊錶
public function destorylist()
} //清空鍊錶
public function clearlist()
$this->list=array();
$this->size=0;
$this->head="";
} //判斷鍊錶是否為空
public function emptylist()
} //鍊錶長度
public function lenghtlist()
} //取元素
public function getelem($i)
if(isset($this->list)&&is_array($this->list))
}return $this->list[$tmp]['data'];
}} //是否在鍊錶中
public function locateelem($e)else
}return true;
}} //前驅
public function priorelem($i)
if($i==1)
$tmp=$this->head;
$j=1;
while($i>$j+1)
}return$this->list[$tmp]['data'];
} //後繼
public function nextelem($i)
if($i==$this->size)
$j=1;
$tmp=$this->head;
while($i>=$j)
}return$this->list[$tmp]['data'];
} //插入元素:後插法
public function insertlist($i,$e)else
$j=1;
$tmp=$this->head;
while($i>$j)
}$find=$tmp;
$id=$this->uuid();
if($this->list[$find]['next']==null)else}}
} //刪除元素
public function deletellist($i)
if(isset($this->list)&&is_array($this->list))else
}//找到刪除元素的前驅
$find=$tmp;
//刪除的元素
if($this->list[$find]['next']!=null)else}}
} public function tr**erstlist()
$this->printlist($this->list[$tmp]['data'],false);
} public function printlist($str,$flag)else
} //uuid 唯一碼
public function uuid($prefix = '')
}?>
資料結構 順序表與鍊錶
順序表插入操作 temp seqlist list temp賦值為乙個結構體變數 for i temp length i pos i pos是插入的位置,注意是ta是下標 temp i int node 放新結點 temp length 刪除操作 for int i pos 1 ilength i ...
資料結構 順序表和鏈式表
第一次在csdn上寫東西,心裡有點激動,希望自己可以堅持下去。嘿嘿嘿,算是在csdn上出道了。文章簡單的描述了一下,我在某科上機遇到的一點問題 個人筆記使用,輕噴,附有原始碼,歡迎交流 順序表是採用的連續的儲存結構 結構為 1.表長度 2.指向的資料 3.儲存的空間 可以再分配 typedef st...
資料結構篇 線性結構之順序表與鍊錶
線性表的概念 線性表簡稱表,是零個或多個元素的有窮序列,通常可以表示成 k0,k1,kn 1 n 1 線性表的一些名詞 表目 線性表中的元素 可包含多個資料項,記錄 索引 下標 i 稱為表目 ki 的 索引 或 下標 表的長度 線性表中所含元素的個數 n 空表 長度為零的線性表 n 0 線性表的特點...