数据结构之python实现顺序表
数据结构之python实现顺序表
顺序表是指采用顺序存储的方式来存储数据元素的线性表。
初始化以及创建顺序表
class SequenceList(object):def __init__(self):self.seq_list = []def create_sequence_list(self):element = input("请输入(按回车键确认,按#键结束):")while element != '#':self.seq_list.append(int(element))element = input("请输入(按回车键确认,按#键结束):")def print_sequence_list(self):print(self.seq_list)list_1 = SequenceList()
list_1.create_sequence_list()
list_1.print_sequence_list()
运行效果:
判断顺序表是否为空
class SequenceList(object):def __init__(self):self.seq_list = []def create_sequence_list(self):element = input("请输入(按回车键确认,按#键结束):")while element != '#':self.seq_list.append(int(element))element = input("请输入(按回车键确认,按#键结束):")def is_empty(self):if len(self.seq_list) == 0:print('顺序表为空')else:print('顺序表不为空')def print_sequence_list(self):print('顺序表中的元素为:', self.seq_list)list_1 = SequenceList()
list_1.create_sequence_list()
list_1.is_empty()
list_1.print_sequence_list()
运行结果:
查找顺序表中某一个元素
class SequenceList(object):def __init__(self):self.seq_list = []def create_sequence_list(self):element = input("请输入(按回车键确认,按#键结束):")while element != '#':self.seq_list.append(int(element))element = input("请输入(按回车键确认,按#键结束):")def print_sequence_list(self):print('顺序表中的元素为:', self.seq_list)def find_element(self):key = int(input('请输入要查找的元素:'))if key in self.seq_list:key_pos = self.seq_list.index(key)print('查找成功,在顺序表中的索引为:%d' % key_pos)else:print("查找失败,在顺序表中不存在这样的元素")list_1 = SequenceList()
list_1.create_sequence_list()
list_1.print_sequence_list()
list_1.find_element()
运行结果:
顺序表在指定位置插入元素
class SequenceList(object):def __init__(self):self.seq_list = []def create_sequence_list(self):element = input("请输入(按回车键确认,按#键结束):")while element != '#':self.seq_list.append(int(element))element = input("请输入(按回车键确认,按#键结束):")def print_sequence_list(self):print('顺序表中的元素为:', self.seq_list)def insert_element(self):pos = int(input('请输入要插入的位置:'))key = int(input('请输入要插入的值:'))print('插入前顺序表为:', self.seq_list)self.seq_list.insert(pos, key)print('插入后顺序表为:', self.seq_list)list_1 = SequenceList()
list_1.create_sequence_list()
list_1.print_sequence_list()
list_1.insert_element()
运行结果:
顺序表指定位置删除元素
class SequenceList(object):def __init__(self):self.seq_list = []def create_sequence_list(self):element = input("请输入(按回车键确认,按#键结束):")while element != '#':self.seq_list.append(int(element))element = input("请输入(按回车键确认,按#键结束):")def print_sequence_list(self):print('顺序表中的元素为:', self.seq_list)def del_element(self):pos = int(input('请输入要删除元素的位置:'))print('删除前顺序表为:', self.seq_list)if (pos >= 0) and pos < len(self.seq_list):del self.seq_list[pos]print('删除后顺序表为:', self.seq_list)else:print('你可真皮,长点心吧!!!')list_1 = SequenceList()
list_1.create_sequence_list()
list_1.print_sequence_list()
list_1.del_element()
运行结果:
遍历顺序表元素:
class SequenceList(object):def __init__(self):self.seq_list = []def create_sequence_list(self):element = input("请输入(按回车键确认,按#键结束):")while element != '#':self.seq_list.append(int(element))element = input("请输入(按回车键确认,按#键结束):")def print_sequence_list(self):print('顺序表中的元素为:', self.seq_list)def travel_element(self):print('遍历后的结果为:', end=' ')for i in range(len(self.seq_list)):print(self.seq_list[i], end=' ')list_1 = SequenceList()
list_1.create_sequence_list()
list_1.print_sequence_list()
list_1.travel_element()
运行结果:
获取顺序表中的最大值和最小值:
class SequenceList(object):def __init__(self):self.seq_list = []def create_sequence_list(self):element = input("请输入(按回车键确认,按#键结束):")while element != '#':self.seq_list.append(int(element))element = input("请输入(按回车键确认,按#键结束):")def print_sequence_list(self):print('顺序表中的元素为:', self.seq_list)def get_element_max_or_min(self):value = int(input("请输入序号(1是求最大值,2是求最小值,0是退出程序):"))if value == 1:print('顺序表最大值为:', max(self.seq_list))elif value == 2:print('顺序表最小值为:', min(self.seq_list))else:print('你si不si傻???')list_1 = SequenceList()
list_1.create_sequence_list()
list_1.print_sequence_list()
list_1.get_element_max_or_min()
运行结果:
顺序表末插入一个元素
class SequenceList(object):def __init__(self):self.seq_list = []def create_sequence_list(self):element = input("请输入(按回车键确认,按#键结束):")while element != '#':self.seq_list.append(int(element))element = input("请输入(按回车键确认,按#键结束):")def print_sequence_list(self):print('顺序表中的元素为:', self.seq_list)def append_element(self):key = int(input('请输入要插入的值:'))print('插入前的顺序表', self.seq_list)self.seq_list.append(key)print('插入后的顺序表', self.seq_list)list_1 = SequenceList()
list_1.create_sequence_list()
list_1.print_sequence_list()
list_1.append_element()
运行结果:
获取顺序表中指定位置元素:
class SequenceList(object):def __init__(self):self.seq_list = []def create_sequence_list(self):element = input("请输入(按回车键确认,按#键结束):")while element != '#':self.seq_list.append(int(element))element = input("请输入(按回车键确认,按#键结束):")def print_sequence_list(self):print('顺序表中的元素为:', self.seq_list)def get_element(self):pos = int(input('请输入要获取元素的位置:'))if (pos < len(self.seq_list)) and pos >= 0:print('获取到的元素为:', self.seq_list[pos])else:print('请输入有效位置')list_1 = SequenceList()
list_1.create_sequence_list()
list_1.print_sequence_list()
list_1.get_element()
运行结果:
销毁顺序表
class SequenceList(object):def __init__(self):self.seq_list = []def create_sequence_list(self):element = input("请输入(按回车键确认,按#键结束):")while element != '#':self.seq_list.append(int(element))element = input("请输入(按回车键确认,按#键结束):")def print_sequence_list(self):print('顺序表中的元素为:', self.seq_list)def destroy_sequence(self):print('销毁前顺序表为:', self.seq_list)self.__init__()print('销毁后顺序表为:', self.seq_list)list_1 = SequenceList()
list_1.create_sequence_list()
list_1.print_sequence_list()
list_1.destroy_sequence()
list_1.print_sequence_list()
运行结果:
数据结构之python实现顺序表相关推荐
- python代码大全表解释-Python中顺序表的实现简单代码分享
顺序表python版的实现(部分功能未实现) 结果展示: 代码示例: #!/usr/bin/env python # -*- coding:utf-8 -*- class SeqList(object ...
- 逆置单链表c语言程序,(数据结构C语言版)顺序表和单链表的逆置
<(数据结构C语言版)顺序表和单链表的逆置>由会员分享,可在线阅读,更多相关<(数据结构C语言版)顺序表和单链表的逆置(7页珍藏版)>请在人人文库网上搜索. 1.实验1-1顺序 ...
- java数据结构与算法之顺序表与链表深入分析
转载请注明出处(万分感谢!): http://blog.csdn.net/javazejian/article/details/52953190 出自[zejian的博客] 关联文章: java数据结 ...
- Python数据结构与算法(四)--顺序表
顺序表 在程序中,经常需要将一组(通常是同为某个类型的)数据元素作为整体管理和使用,需要创建这种元素组,用变量记录它们,传进传出函数等.一组数据中包含的元素个数可能发生变化(可以增加或删除元素). 根 ...
- python代码大全表解释-python实现顺序表的简单代码
顺序表即线性表的顺序存储结构.它是通过一组地址连续的存储单元对线性表中的数据进行存储的,相邻的两个元素在物理位置上也是相邻的.比如,第1个元素是存储在线性表的起始位置LOC(1),那么第i个元素即是存 ...
- 数据结构学习笔记:顺序表的删除操作及其演化题目总结
目录 前言 例题 类似题目1 类似题目2 类似题目3 类似题目4 类似题目5 结语 前言 文章代码皆在Dev-C++ 5.11中测试,主要是总结一些方法,从而总结一些规律使自己进一步地深化学习内容,仅 ...
- 【数据结构与算法】顺序表V3.0的Java实现
更新说明 经过了顺序表V1.0的根据接口编写成型.顺序表V2.0的功能大幅度增强,这里推出了顺序表V3.0,功能的丰富性不及V2.0,但加入了迭代器,代码的编写也更加的合理了,应该说是比较好的作品了. ...
- python简单代码-python实现顺序表的简单代码
顺序表即线性表的顺序存储结构.它是通过一组地址连续的存储单元对线性表中的数据进行存储的,相邻的两个元素在物理位置上也是相邻的.比如,第1个元素是存储在线性表的起始位置LOC(1),那么第i个元素即是存 ...
- 数据结构 严薇敏 顺序表的实现(增 删 改)及其使用方法详解
时间复杂度 数据结构 时间复杂度和空间复杂度 目录 1.线性表 2.顺序表 2.1概念及结构 2.2 接口实现 SeqList.h SeqList.c 2.2.1初始化链表以及销毁链表的实现 初始化顺 ...
最新文章
- android auto 字体大小,Android中给TextView字体大小用dp还是sp?dp和sp有什么区别?
- LeetCode Reorder List
- 知识图谱有哪些方向是可以深入研究的?
- java jpanel 间距_Java的 . 调整JPanel上的问题大小
- java testwhileidle_DBCP踩坑(二):连接池检查testWhileIdle失效
- linux中操作数据库的使用命令记录
- UITouch 触摸事件处理(实例)
- day1 java的规范以及变量与数据类型
- Android 应用中十大导航设计错误
- 异步和同步http请求超时机制
- getDerivedStateFromProps填坑
- 2020使用html、js、正则表达式做一个前端注册表单信息验证
- 金蝶记账王、迷你版、标准版引入凭证方法
- Google API 地图离线版
- 打包后自定义attr找不到_80后长沙文物修复师刘胄造“精绝古城”,修复实力连X光都找不到破绽...
- 云计算马太效应:巨头聚集,小玩家开始“退群”!
- 谈谈分布式多智能体中的显式协调机制
- vpython_Vpython简单例子
- Teamcity 简单实践
- Linux基础知识:文件权限管理以及umask
热门文章
- 关于GCN,我有三种写法
- 万字长文综述目标检测领域,你要的都在这里
- 程序员感叹一年只能存下15万太少了……网友:潸然泪下
- ICCV 2019 | 无需数据集的Student Networks
- 树莓派4与英伟达Jetson Nano性能大比拼,谁是最佳的嵌入式“电脑”?
- 科技公司狂挖高校AI学者:涸泽而渔还是产学双赢
- Logback 配置文件这样优化,TPS提高 10 倍
- 太牛了!22岁本科生Github上开源的后台管理系统,太实用(附源码)!
- 千万不要再这样创建集合了!极容易内存泄露!
- Spring Boot + Redis 实现各种操作,写得太好了吧!