主頁 > 知識庫 > php實現(xiàn)的順序線性表示例

php實現(xiàn)的順序線性表示例

熱門標簽:Linux服務器 阿里云 電子圍欄 團購網(wǎng)站 銀行業(yè)務 Mysql連接數(shù)設置 服務器配置 科大訊飛語音識別系統(tǒng)

本文實例講述了php實現(xiàn)的順序線性表。分享給大家供大家參考,具體如下:

?php
/*
 * 線性順序表 ,其是按照順序在內存進行存儲,出起始和結尾以外都是一一連接的(一般都是用一維數(shù)組的形式表現(xiàn))
 *
 * GetElem: 返回線性表中第$index個數(shù)據(jù)元素
 * ListLength: 返回線性表的長度
 * LocateElem: 返回給定的數(shù)據(jù)元素在線性表中的位置
 * PriorElem: 返回指定元素的前一個元素
 * NextElem: 返回指定元素的后一個元素
 * ListInsert: 在第index的位置插入元素elem
 * ListDelete: 刪除第index位置的元素elem
 */
class Sequence {
  public $seqArr;
  public $length;
  public function __construct($arr) {
    $this->seqArr = $arr;
    $this->length = count($arr);
  }
  /*
   * 返回線性表中第$index個數(shù)據(jù)元素
   */
  public function GetElem($index) {
    if (($this->length) == 0 || $index  0 || ($index > $this->length)) {
      return "Error";
    }
    return $this->seqArr[$index - 1];
  }
  /*
   * 返回線性表的長度
   *
   */
  public function ListLength() {
    return $this->length;
  }
  /*
   * 返回給定的數(shù)據(jù)元素在線性表中的位置
   */
  public function LocateElem($elem) {
    for ($i = 0; $i  ($this->length); $i++) {
      if (($this->seqArr[$i]) == $elem) {
        return $i + 1;
      }
    }
  }
  /*
   * PriorElem: 返回指定元素的前一個元素
   */
  public function PriorElem($elem) {
    for ($i = 0; $i  ($this->length); $i++) {
      if (($this->seqArr[$i]) == $elem) {
        if ($i == 0) {
          return "Error (is null) ";
        } else {
          return $this->seqArr[$i - 1];
        }
      }
    }
  }
  /*
   * NextElem: 返回指定元素的后一個元素
   */
  public function NextElem($elem) {
    for ($i = 0; $i  ($this->length); $i++) {
      if (($this->seqArr[$i]) == $elem) {
        return $this->seqArr[$i + 1];
      }
    }
  }
  /*
   * ListInsert: 在第index的位置插入元素elem
   */
  public function ListInsert($index, $elem) {
    if (($this->length) == 0 || $index  0 || $index > ($this->length)) {
      return "Error";
    }
    for ($i = $index; $i  ($this->length); $i++) {
      $this->seqArr[$i + 1] = $this->seqArr[$i];
    }
    $this->seqArr[$index] = $elem;
    $this->length = $this->length + 1;
    return $this->seqArr;
  }
  /*
   * ListDelete: 刪除第index位置的元素
   */
  public function ListDelete($index) {
    if (($this->length) == 0 || $index  0 || $index > ($this->length - 1)) {
      return "Error";
    }
    unset($this->seqArr[$index]);
    $this->length--;
    return $this->seqArr;
  }
}
?>

更多關于PHP相關內容感興趣的讀者可查看本站專題:《PHP數(shù)據(jù)結構與算法教程》、《php程序設計算法總結》、《php字符串(string)用法總結》、《PHP數(shù)組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結》及《PHP數(shù)學運算技巧總結》

希望本文所述對大家PHP程序設計有所幫助。

您可能感興趣的文章:
  • php數(shù)據(jù)結構之順序鏈表與鏈式線性表示例
  • php線性表順序存儲實現(xiàn)代碼(增刪查改)
  • php線性表的入棧與出棧實例分析
  • PHP+MySQL統(tǒng)計該庫中每個表的記錄數(shù)并按遞減順序排列的方法
  • php實現(xiàn)單鏈表的實例代碼
  • PHP小教程之實現(xiàn)鏈表
  • 淺談PHP鏈表數(shù)據(jù)結構(單鏈表)
  • PHP小教程之實現(xiàn)雙向鏈表
  • PHP實現(xiàn)單鏈表翻轉操作示例
  • PHP鏈表操作簡單示例
  • PHP環(huán)形鏈表實現(xiàn)方法示例

標簽:蚌埠 大理 江蘇 棗莊 衡水 萍鄉(xiāng) 廣元 衢州

巨人網(wǎng)絡通訊聲明:本文標題《php實現(xiàn)的順序線性表示例》,本文關鍵詞  ;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266