[PHP语言] php实现顺序线性表

[复制链接]
查看1873 | 回复7 | 2020-10-31 15:02:15 | 显示全部楼层 |阅读模式

什么是线性顺序表?

线性顺序表是指按照顺序在内存进行存储,除起始和结尾以外都是一一连接的(一般都是用一维数组的形式表现)。

(免费学习视频教程分享:php视频教程)

实例代码如下所示:

<?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;
  }
}
?>

相关文章教程分享:php教程

以上就是php实现顺序线性表的详细内容,更多请关注爱上源码网其它相关文章!

  • 微信
  • 分享
  • 相关标签:php 顺序 线性表
  • 本文转载于:脚本之家,如有侵犯,请联系916990011@qq.com删除
    • 上一篇:php实现将表单内容提交到数据库
    • 下一篇:php性能优化的方法介绍

    相关文章

    相关视频

    • php数据结构之顺序链表与链式线性表示例
    • php数据结构与顺序链表链式线性表使用详解
    • php数据结构之顺序链表与链式线性表的示例
    • 【PHP学习】线性表的顺序存储结构原理分析以及代码...
    • php实现顺序线性表
    • 绘制线性表框架
    • 将线性表添加到表格中并生成Excel文件
    • 在线性表上显示坐标数据
    本文有爱上源码下载完入驻作者发布,如果对您版权造成侵害,可以联系本站站长管理进行维权删除,本站收到维权24小时内进行处理,谢谢您关注23ym.cn! 本站分享大量程序员技术文章以及对编程开发的初级入门教程,包括图文讲解笔记和高清视频下载~
    回复

    使用道具 举报

    恶贯满瘾锥 | 2021-1-1 10:33:02 | 显示全部楼层
    谢谢楼主发布的资源下载,帮助我不少
    回复

    使用道具 举报

    肥皂沫沫盘 | 2021-3-11 11:08:27 | 显示全部楼层
    资源太多了,准备办个会员
    回复

    使用道具 举报

    划翔的青鸟纲 | 2021-7-31 08:34:04 | 显示全部楼层
    我是来白嫖资源的!
    回复

    使用道具 举报

    啊歪歪哈坠 | 2022-6-2 14:05:23 | 显示全部楼层
    我是来白嫖悟空源码的资源的!
    回复

    使用道具 举报

    老三是叔叔 | 2022-6-3 06:37:23 | 显示全部楼层
    谢谢楼主分享的资源,爱了~~~
    回复

    使用道具 举报

    jj13904198394 | 2023-4-26 14:27:08 | 显示全部楼层
    我是来白嫖资源的!
    回复

    使用道具 举报

    清风JA1 | 2023-10-4 21:19:14 | 显示全部楼层
    站长真良心,这么大的资源站都是免费下载
    回复

    使用道具 举报

    123457321 | 2023-11-7 12:41:15 | 显示全部楼层
    厉害了悟空源码,这么多资源
    回复

    使用道具 举报

    忆神姆原们 | 2023-11-26 20:53:13 | 显示全部楼层
    很不错的资源站
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则