判断带头结点的循环双链表是否对称

2023-11-10

题目:
设计一个算法,用于判断带头结点的循环双链表是否对称。

分析:

  • 循环双链表的特点是:当前结点方便找到前后节点,且尾指针指向第一个结点;
  • 对称性:判断第一个结点和最后一个结点的值是否相等,如果相等,再判断第二个结点和倒数第二个结点;以此类推;
  • 从前往后遍历,采用p指针,从后往前遍历,采用q指针;
  • 如果存在不相等的,退出判断,说明链表不对称;
  • 链表表长为奇数时,如果指针p和q指向同一个结点,则退出循环,说明链表是对称的;
  • 链表表长为偶数是,如果指针p和q相邻,则比完p->data和q->data后即可退出;
bool Symmetry(DLinkList L){
   
    if(L->next ==L &&
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

判断带头结点的循环双链表是否对称 的相关文章

随机推荐

  • ATL 和 MFC 字符转换宏

    ATL 和 MFC 字符转换宏 ATL3 0 ATL3 0中的W2T T2W等一系列宏很方便 但一定要小心 它们从栈上分配内存 直到调用它的函数返回前 该内存不会被释放 如果在一个循环中 这类宏被你反复调用几万次时 你将不可避免地产生sta
  • ElementUi常用的属性及官方解释比较模糊的知识点

    1 Dialog对话框 1 close on click modal true 官方文档解释 是否可以通过点击 modal 关闭 Dialog 默认是true 其实它的意思就是点击空白处弹框可关闭 经过尝试这个空白处指的是弹框外的空白处 不
  • 【保姆级教程】Marktext配合Github图床使用

    写在前面 这些天在跟着李宏毅老师的网课进度 补一补机器学习和深度学习的相关内容 从头开始归档markdown文档手写笔记 由于之前大火的Typora笔记软件收费 推荐学生党使用免费开源的Marktext作为平替 下载链接如下 marktex
  • 大专生出身?mysql面试题常问

    正文 下文中截图来源于朋友一个pdf版本的面经 把所以知识点的答案整理了下来 耗费他至少1个月时间 在本文最后部分把这个pdf分享给大家 觉得有用的麻烦点赞关注走一波 谢谢 面经中有他的知识点的答案 如下图示例 非常详细 文末有领取方式 1
  • 支付宝碎屏险究竟是怎么回事?靠谱么?

    由于有很多人看这个文章 所以个人补充一些内容 1 支付宝碎屏险一次就是保一年的 只有支付方式为月付或者年付 连续包月是陷阱 无论你选什么套餐 在保险条款里面都是保12个月的 已经理赔的不允许退保 所以即使你已经理赔 人家不再给你修了 你也要
  • qDebug打印出来路径的时候遇到的问题

    具体参考博客 https blog csdn net u011283226 article details 101382747 当遇到路径打印的时候 正确的路径打印是 qDebug noquote lt lt qDebug lt lt di
  • 6-9.Vue-router之编程式导航

    Vue router 编程式导航 vue中实现导航可以由
  • 3D形状分割:在ShapeNet数据集上使用PointNet++进行3D形状分割任务

    在本篇博客中 我们将探讨如何使用PointNet 模型在ShapeNet数据集上进行3D形状分割任务 3D形状分割是计算机视觉和深度学习领域的一个重要研究方向 可以用于识别3D点云数据中的不同部分 PointNet 是一种基于点云数据的深度
  • OSI模型与TCP\IP协议

    目录 一 分层 1 1 分层原因 1 2 OSI七层模型 二 TCP IP 2 1 TCP IP协议族的组成 模型层 物理层 网络层 传输层 应用层 三 数据封装过程 五 PDU协议数据定义 六 设备与各层对应关系 七 各层间通信 一 分层
  • dos bat批量创建软链接

    windows 下 要将 train2017 val2017 两个目录下的图片并入一个目录 images 用 mklink 创建软链接 1 可以不用额外空间 win10 也可以写 sh 脚本用 ln s 但效果似乎同 copy 因为用 ln
  • uni-app实战教程

    一 准备 下载HBuilderX编辑器 前往下载 注册百度AI账号 创建应用获得Appid和Secret 前往注册 百度AI通用物体识别文档 前往查阅 Uni App文档 前往查阅 HTML5 文档 前往查阅 HTML5 文档 前往查阅 二
  • IDEA插件分享(实用推荐)

    1 SequenceDiagram 序列图插件 查看方法内部的调用其他的序列图 使用方法 选中对应的方法 右击选择 SequenceDiagram 或者右上角点击SequenceDiagramtu bi 2 Maven Search 快速搜
  • 万户协同办公平台ezoffice未授权访问漏洞

    文章目录 0x01 前言 0x02 漏洞描述 0x03 影响范围 0x04 漏洞环境 0x05 漏洞复现 1 构造POC 2 进行MD5值解密 3 尝试进行登录 0x06 复现建议 0x01 前言 本次测试仅供学习使用 如若非法他用 与本文
  • [论文分享] TREX: Learning Execution Semantics from Micro-Traces for Binary Similarity

    TREX Learning Execution Semantics from Micro Traces for Binary Similarity Kexin Pei Columbia University Zhou Xuan Univer
  • HashMap的扩容机制、ConcurrentHashMap的原理

    HashMap的扩容机制 ConcurrentHashMap的原理 n 1 hash 相当于hash n public V put K key V value return putVal hash key key value false t
  • Android性能调优工具TraceView介绍

    转自 http www trinea cn android android traceview 本文主要介绍Android性能调优工具TraceView的使用及通过其确定性能点 目前性能优化专题已完成以下部分 性能优化总纲 性能问题及性能调
  • WIN10软件开机自启动设置(基于win10系统,不依赖第三方软件)

    开机启动项设置教程 第一步 win R打开运行窗口 输入命令msconfig 回车 第二步打开系统配置 切换到 启动 选项卡 第三步打开任务管理器 第四步单击选中想要禁止或者开启的软件 已启动代表开机时软件会自动启动 已禁用代表开机是软件不
  • “Intel VT-x处于禁用状态”怎么解决(图形化)

    Intel VT x处于禁用状态 如何解决 开启虚拟机时弹出这个提示 说明电脑的虚拟化没有开启 只有开启它 才能运行虚拟机 网上大多数 Intel VT x处于禁用状态 解决方案都是开机按Fn系列键进入BIOS设置 可是博主试了好多次 电脑
  • WEB攻击与防御

    这里列举一些常见的攻击类型与基本防御手段 XSS攻击 跨站脚本 Cross site scripting 简称XSS 把JS代码注入到表单中运行例如在表单中提交含有可执行的JS的内容文本 如果服务器端没有过滤或转义这些脚本 而这些脚本由通过
  • 判断带头结点的循环双链表是否对称

    题目 设计一个算法 用于判断带头结点的循环双链表是否对称 分析 循环双链表的特点是 当前结点方便找到前后节点 且尾指针指向第一个结点 对称性 判断第一个结点和最后一个结点的值是否相等 如果相等 再判断第二个结点和倒数第二个结点 以此类推 从