大话数据结构
来源:互联网 发布:即时通讯app源码下载 编辑:程序博客网 时间:2024/05/16 12:00
线性表就是0个或多个数据元素的有限序列; 元素之间存在顺序, 除开头结尾之外, 每个元素有且仅有一个前驱元素, 后继元素。线性表的顺序存储叫做顺序表,简单的说就是对数组进行封装,使得更好的满足需求。
1. 线性表的顺序存储结构
线性表的顺序存储结构指的是用一段地址连续的内存依次存储线性表的数据元素
2. 线性表的链式存储结构
链表
3. 顺序表Python实现
class List: """ 线性表的顺序存储结构: 顺序表 数据成员: 一个数组, 线性表的长度 方法成员: 1. 判断线性表是否为空 2. 向线性表任意位置插入元素 3. 查找线性表中是否存在某个值 4. 删除任意位置的一个元素 5. 获取列表中任意位置的元素 6. 清空列表 """ def __init__(self, data): self.List = data self.length = self._get_list_length() def _get_list_length(self): return len(self.List) def is_empty(self): # 1. 判断线性表是否为空 if len(self.List) == 0: return True else: return False def insert(self, i, element): # 2. 向线性表第i个位置插入元素 length = self.length if i not in range(length): raise(Exception("线性表长度不足")) for j in range(i, length): temp = self.List[j] self.List[j] = element element = temp def locate_ele(self, element): # 3. 对给定的某个值element定位, 如果存在返回-1 length = self.length for i in range(length): if self.List[i] == element: return i print("\n线性表中不存在{0}".format(element)) return -1 def delete_i_ele(self, i): # 4. 删除第i个位置的元素 length = self.length if i not in range(length): raise(Exception("线性表长度不足")) temp = [] for j in range(i, length-1): temp.append(self.List[j + 1]) self.List = self.List[0:j-1] + temp def get_i_ele(self, i): # 5. 获取第i个位置的元素 length = self.length if i not in range(length): raise(Exception("线性表长度不足")) return self.List[i] def clean(self): self.List = []
阅读全文
0 0
- 大话数据结构
- 大话数据结构
- 大话数据结构
- 大话数据结构
- 大话数据结构
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- 《大话数据结构》
- window系统如何恢复/查看swp文件
- mybatis3通过provider注解结合动态sql实现增删改查,不再依赖xml成为可能
- kubernetes简介
- 操作系统-知识点总结-JeRome_JLU
- React学习之坑(二)- 基础入门
- 大话数据结构
- python + opencv 实现人脸检测
- Java建造者模式以及常见误区错误分析纠正
- tomact 配置JNDI局部数据源
- Windows Caffe 学习笔记 caffe-windows(CPU)配置与利用mnist数据集训练第一个caffemodel
- C#中如何在登录案例中设置用户输错三次密码禁止登陆,15分钟后才能继续。
- 使用wget 指定本地使用地址进行下载—主机名或IP( --bind-address=ADDRESS)
- phpMyAdmin安装过程中的mbstring问题
- 数据结构实验一(实验报告)