php实现顺序线性表
发布:smiling 来源: PHP粉丝网 添加日期:2022-05-28 09:41:12 浏览: 评论:0
什么是线性顺序表?
线性顺序表是指按照顺序在内存进行存储,除起始和结尾以外都是一一连接的(一般都是用一维数组的形式表现)。
实例代码如下所示:
- <?php
- /*
- * GetElem: 返回线性表中第$index个数据元素
- * ListLength: 返回线性表的长度
- * LocateElem: 返回给定的数据元素在线性表中的位置
- * 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个数据元素
- */
- 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;
- }
- /*
- * 返回给定的数据元素在线性表中的位置
- */
- 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;
- }
- }
- ?>
Tags: php顺序线性表
- 上一篇:php实现将表单内容提交到数据库
- 下一篇:最后一页
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)