当前位置: 首页 > news >正文

公司做网站要花多少钱网站描述是什么

公司做网站要花多少钱,网站描述是什么,品牌好的佛山网站建设价格,西宁最新消息今天前言:链表是算法中比较难理解的部分,本博客记录单链表、双链表学习,理解节点和指针的使用,主要内容包括:使用python创建链表、实现链表常见的操作。 目录 单链表 双链表 单链表 引入链表的背景: 先来看…

前言:链表是算法中比较难理解的部分,本博客记录单链表、双链表学习,理解节点和指针的使用,主要内容包括:使用python创建链表、实现链表常见的操作。

目录

单链表

双链表


单链表

引入链表的背景:

先来看一下数据,数组是一块连续的区域,需要预留空间。

链表,是一种线性表,线性表包括顺序表、链表,但链表不像顺序表一样连续地存储数据,而是在每个节点里存放下一个节点的位置信息(地址)。

单链表,第一个节点是头节点,最后一个节点是尾节点。

操作链表时,需要注意特殊的情况:

  1. 空链表
  2. 只有一个头节点没有尾节点的链表,头节点地址指向空
  3. 有一个头节点,接着连接一个尾节点,没有中间节点

使用python语言创建一个单链表

需要实现以下功能:

  • 实现判断链表是否为空
  • 计算链表的长度
  • 在链表头部添加元素
  • 在链表尾部添加元素
  • 在链表的指定位置添加元素
  • 删除指定元素的节点
  • 判断节点是否存在
class Node(object):def __init__(self, elem):# 节点self.elem = elemself.next = None# 单链表
class SingleLinkList(object):def __init__(self, node=None):self.__head = node# 判断链表是否为空def is_empty(self):return self.__head == None# 链表的长度def length(self):# cur游标用来遍历节点cur = self.__headcount = 1while cur != None:count += 1cur = cur.nextreturn count# 链表的遍历def travel(self):cur = self.__headwhile cur != None:print(cur.elem, end=" ")cur = cur.next# 头部添加元素def add(self, item):node = Node(item)node.next = self.__headself.__head = node# 尾部添加元素def append(self, item):node = Node(item)if self.is_empty():self.__head = nodeelse:cur = self.__headwhile cur.next != None:cur = cur.nextcur.next = nodepass# 指定位置添加元素def insert(self, pos, item):if pos <= 0:self.add(item)elif pos > (self.length() - 1):self.append(item)else:pre = self.__headcount = 0while count < (pos - 1):count += 1pre = pre.next#     当循环退出后 pre指向pos-1node = Node(item)node.next = pre.nextpre.next = node# 删除元素 找到具体的数据删除def remove(self, item):cur = self.__headpre = Nonewhile cur != None:if cur.elem == item:if cur == self.__head:self.__head = cur.nextelse:pre.next = cur.nextbreakelse:pre = curcur = cur.next# 查找节点是否存在def search(self, item):cur = self.__headwhile cur != None:if cur.elem == item:return Trueelse:cur = cur.nextreturn False

双链表

双链表比单链表多了个前驱节点

使用python语言创建一个双链表

需要实现以下功能:

  • 实现判断链表是否为空
  • 计算链表的长度
  • 在链表头部添加元素
  • 在链表尾部添加元素
  • 在链表的指定位置添加元素
  • 删除指定元素的节点
  • 判断节点是否存在

 

class Node(object):def __init__(self, item):self.elem = itemself.next = Noneself.prev = Noneclass DoubleLinkList(object):# 双链表def __init__(self, node=None):self.__head = node# 判断链表是否为空def is_empty(self):return self.__head == None# 链表的长度def length(self):# cur游标用来遍历节点cur = self.__headcount = 1while cur != None:count += 1cur = cur.nextreturn count# 链表的遍历def travel(self):cur = self.__headwhile cur != None:print(cur.elem, end=" ")cur = cur.next# 头部添加元素def add(self, item):node = Node(item)node.next = self.__headself.__head = nodenode.next.prev = node# 尾部添加元素def append(self, item):node = Node(item)if self.is_empty():self.__head = nodeelse:cur = self.__headwhile cur.next != None:cur = cur.nextcur.next = nodenode.prev = curpass# 指定位置添加元素def insert(self, pos, item):if pos <= 0:self.add(item)elif pos > (self.length() - 1):self.append(item)else:cur = self.__headcount = 0while count < (pos - 1):count += 1cur = cur.next#     当循环退出后 pre指向posnode = Node(item)node.next = curnode.prev = cur.prevcur.prev.next = nodecur.prev = node# 删除元素 找到具体的数据删除def remove(self, item):cur = self.__headwhile cur != None:if cur.elem == item:if cur == self.__head:self.__head = cur.nextif cur.next:# 判断链表是否只有一个节点cur.next.prev = Noneelse:cur.prev.next = cur.nextif cur.next:cur.next.prev = cur.prevbreakelse:cur = cur.next# 查找节点是否存在def search(self, item):cur = self.__headwhile cur != None:if cur.elem == item:return Trueelse:cur = cur.nextreturn False
http://www.yayakq.cn/news/769883/

相关文章:

  • 网站制作无锡长沙知名网站
  • 网站搭建需要服务器吗wordpress网站系统
  • 山东省住房建设厅网站考试项目如何添加网站关键词
  • 浙江省一建建设集团网站首页驾校视频网站模板
  • 网站建设单位排名哪个网站可以卖自己的设计
  • 网站规划与建设课程网站的友情链接做多少个比较合适
  • 网站内容完全改变被k如何设计一个企业网站
  • 山东建设局网站 王局线上推广方式有哪几种
  • 企业网站建设维护淘宝网店网站建设目的
  • 网站主机方案企业门户网站中国燃气
  • 数据库网站建设公司官方网站下载打印机的驱动
  • 泰州做网站需要多少钱沈阳方正建设监理网站
  • 世界上有几个空间站关于征集网站建设素材的通知
  • 把网站内容全删掉 在重新建立会不会被k百度视频免费高清网站
  • 北京网站备案地址宁波网站建设与维护
  • 网站代码模板编写网络营销软文范例500
  • 网站有哪些类型和它的成功案例wordpress 站点群
  • 长沙专业外贸建站公司产品宣传短视频
  • 做多级分销的网站八百客crm管理系统
  • 青岛仿站定制模板建站1997年做网站是什么语言
  • 湖北响应式网站建设嘉兴网站建设方案
  • 网站建设 技术方案模板东莞建设网站企业沟通平台
  • 网站建设维护人员岗位网站推广策划的流程
  • 网站建设及经营应解决好的问题杭州电子商务网站开发
  • 建站之星安装说明阿里云虚拟主机配置wordpress
  • 建立网站第一步怎么做做网站卖资料
  • 网站手机端的优势怎样推广一个产品
  • 哪种网站名称容易通过备案审核我要注册邮箱
  • 广州建设工程网站便捷的网站建设平台
  • 湛江建站免费模板自己做网站大概需要多少钱