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

嘉兴快速建站合作怎么做网页成绩查询

嘉兴快速建站合作,怎么做网页成绩查询,中国网站排名,罗伯特清崎说的网络营销是什么一、什么是链表数据? 链表是一种通过指针串联在一起的数据结构,每个节点由2部分组成,一个是数据域,一个是指针域(存放下一个节点的指针)。最后一个节点的指针域指向null(空指针的意思&#xff0…

一、什么是链表数据?
链表是一种通过指针串联在一起的数据结构,每个节点由2部分组成,一个是数据域,一个是指针域(存放下一个节点的指针)。最后一个节点的指针域指向null(空指针的意思),链表的入口节点称为链表的头结点也就是head
链表结构如下图在这里插入图片描述
二、链表的类型
1、单链表每个节点的指针指向一个方向,只可单方向查询数据,如上图所示。
2、双链表,每个节点可以有2个指针域,既可指向下一个节点,也可指向上一个节点,双链表既可以向前查询,也可以向后查询。
如图在这里插入图片描述3、循环链表:链表首尾相连,可以用来解决约瑟夫环问题。如图
在这里插入图片描述三、链表的存储方式
链表的存储于数组不同,数组在空间中可以是连续的,而链表是通过指针域的指针将不连续的数据存储在空间各个节点中的,因此指针节点在链表数据的应用中非常关键。所以链表中的节点在内存中不是连续分布的 ,而是散乱分布在内存中的某地址上,分配机制取决于操作系统的内存管理。
四、链表的定义
了解了链表的结构组成,我们来了解一下链表的Python 实现,链表作为一个类,他需要构造。

class ListNode:def __init__(self, val, next=None):##定义一个列表函数,包含数据值和指针()self.val = val #定义列表节点的self.val为valself.next = next #定义列表指针的self.next为next

五、常见的链表操作
1、删除节点在这里插入图片描述
如图想要删除D节点,就要先将D节点上一个指针指向E节点,在Python语言中,会自动将D节点释放掉,此时就可以删除D节点了。
2、节点添加
在这里插入图片描述如图想要在D节点前添加F节点,需要先把C节点指向F节点,然后再把F节点的指针指向D节点,在这个过程中Python系统会自动释放C到D的指针指向。

链表的增添和删除都是O(1)操作,也不会影响到其他节点。

但是要注意,要是删除第五个节点,需要从头节点查找到第四个节点通过next指针进行删除操作,查找的时间复杂度是O(n)。
六、链表和数组操作比较
在这里插入图片描述
数组在定义的时候,长度就是固定的,如果想改动数组的长度,就需要重新定义一个新的数组。

链表的长度可以是不固定的,并且可以动态增删, 适合数据量不固定,频繁增删,较少查询的场景。

Leetcode203题在这里插入图片描述

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:def removeElements(self, head: Optional[ListNode], val: int) -> Optional[ListNode]:cur=dummy=ListNode(next=head) ##构建一个虚拟哨兵节点,使得他的指针指向头结点while cur.next: ##当当前节点的指针存的时候if cur.next.val==val: ##如果当前节点的下一个节点的值等于指定的值,cur.next=cur.next.next #则删除下一个节点else:cur=cur.next #否则当前链表向下一个节点移动return dummy.next #返回链表(因为dummy是头结点前的一个虚拟节点,所以返回的是dummy.next)

在这里插入图片描述

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:def reverseList(self, head: Optional[ListNode]) -> Optional[ListNode]:cur=headpre=Nonewhile cur:tem=cur.next##保存cur后续数据cur.next=pre##cur指针方向改变pre=cur ##把当前的cur付给pre,进行下一次循环cur=tem ##把之前保存的cur后续数据再赋值给当前的cur,进行下一次循环return pre
http://www.yayakq.cn/news/132304/

相关文章:

  • 35网站建设私域直播平台有哪些
  • 网站备案承若怎么写凡科代理千万不要做
  • 网站建设需要的软件站长工具seo综合查询降级
  • 什么网站可以查建筑工程项目网站 固定ip
  • 域名做网站安卓手机 做网站
  • 全国icp网站备案审核时间建设部人事考试网站官网
  • 邢台网站建设行情100部禁用app
  • 智能网站建设模板售后the word 和 wordpress
  • 做高效能的父母网站做新闻源网站采集站赚钱
  • 网站上做推广宁乡网站建设点燃网络
  • windows 2008 网站小游戏网站审核怎么做
  • 电子商务网站建设与维护03开源免费商用cms
  • 网站商城开发淘宝关键词排名是怎么做的
  • 朔州怀仁网站建设建设通怎么查有无在建
  • 厦门维品网站建设公司注册资金实缴政策最新
  • 网站的flash工程管理专业后悔死了
  • 网站是通过超链接寒亭做网站
  • 怎样建立网站建设上海工程公司排名
  • 长沙专业网站设计服务网站广审怎么做
  • 法治建设的网站淄博 做网站
  • 网站头部怎么做百度用户服务中心电话
  • 做电影网站赚钱吗海尔集团的电子商务网站建设
  • 有哪些线上做酒店的网站昆山公司网站建设电话
  • 网站建设资金管理办法wordpress登录短信验证码
  • 苏州大学网站建设目标刚做网站做什么网站好点
  • 网站的要求赣州酒店网站设计
  • 网站建设会遇到哪些问题福州哪家专业网站设计制作最好
  • 景德镇网站维护手游平台十大排名
  • 杨浦专业网站建设江象网站建设
  • 合肥网站seo推广你买域名我送网站