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

创新的广州做网站最好的优化公司排名

创新的广州做网站,最好的优化公司排名,怎么注册阿里巴巴店铺,wordpress栏目关键词描述标签编写一个算法来就地逆置一个单链表。默认情况下,链表是带头节点的,但如果链表不带头节点,逆置的过程会有所不同。 第一步:定义逆置函数 根据题目中的“试编写算法将单链表就地逆置”,我们需要: 定义一个…

编写一个算法来就地逆置一个单链表。默认情况下,链表是带头节点的,但如果链表不带头节点,逆置的过程会有所不同。

第一步:定义逆置函数

根据题目中的“试编写算法将单链表就地逆置”,我们需要:

  1. 定义一个逆置函数 reverse,它接受一个链表头节点的引用作为参数。

这部分的代码为:

void reverse(LNode*& L) {LNode *p = L->next, *r;L->next = NULL;

第二步:逆置链表

根据题目中的“就地逆置”,我们需要:

  1. 初始化 p 指向链表的第一个节点(跳过头节点)。
  2. 使用 while 循环遍历链表,直到 pNULL
  3. 在循环中,保存 p 的下一个节点到 r,然后将 pnext 指向头节点的下一个节点,最后更新头节点的 nextp

这部分的代码为:

    while (p != NULL) {r = p->next; // 保存下一个节点p->next = L->next; // 逆置当前节点L->next = p; // 更新头节点的nextp = r; // 移动到下一个节点}
}

第三步:处理不带头节点的链表

如果链表不带头节点,我们需要稍微修改上述代码。在这种情况下,我们不需要头节点,可以直接操作原链表的头节点。

这部分的代码为:

void reverseNoHead(LNode*& L) {LNode *p = L, *r;L = NULL; // 新的头节点初始化为NULLwhile (p != NULL) {r = p->next; // 保存下一个节点p->next = L; // 逆置当前节点L = p; // 更新新的头节点p = r; // 移动到下一个节点}
}

完整代码

// 带头节点的逆置
void reverse(LNode*& L) {LNode *p = L->next, *r;L->next = NULL;while (p != NULL) {r = p->next;p->next = L->next;L->next = p;p = r;}
}// 不带头节点的逆置
void reverseNoHead(LNode*& L) {LNode *p = L, *r;L = NULL;while (p != NULL) {r = p->next;p->next = L;L = p;p = r;}
}

代码过程

  1. 初始化 p 指向第一个节点,L->nextNULL
  2. while 循环中,r 保存 p 的下一个节点。
  3. p->next 指向 L->next,即前一个逆置后的节点。
  4. L->next 更新为 p,即当前逆置的节点。
  5. p 移动到 r,即下一个待逆置的节点。
  6. 重复步骤2-5,直到 pNULL

假设我们有一个单链表:1 -> 2 -> 3 -> 4,我们将通过表格来展示每一步的变化。

步骤L->nextprp->nextL->next 更新p 更新
初始22NULL3NULL3
1NULL23433
2334NULL24
324NULLNULL1NULL

在逆置过程中,我们首先将头节点的 next 指针设置为 NULL,然后遍历链表,每次将当前节点的 next 指针指向前一个逆置后的节点,然后将头节点的 next 指针更新为当前节点,最后将当前节点更新为其下一个节点。

最终,链表将被逆置为:4 -> 3 -> 2 -> 1。

http://www.yayakq.cn/news/335677/

相关文章:

  • 做图文网站要什么配置的服务器如何建立网站数据库连接
  • 为什么营销型网站比普通网站建站贵做企业网站需要什么条件
  • 网站设计与网页制作岗位招聘信息亚马逊全球购官网
  • 企业网站设计建设服务器有名的公司
  • 网站开发要做什么网站建设是固定资产嘛
  • 美食网站开发目的与意义wordpress主页设置分类
  • 南京网站开发选南京乐识好wordpress登录去不了后台
  • 品牌网站建设价格天天快递开发公司大厅售后
  • 网站设计的优点app开发商业计划书模板
  • 手机零售网站 关键词网站除了做流量还需要什么软件吗
  • 用.net做网站网站网络推广优化哪家好
  • wordpress 仿站工具怎么做找券网站
  • 关于桥梁建设工程设公司网站网站开发vs设计报告
  • 学校网站建设与管理办法温州市网站优化
  • 建设银行江苏省行网站影院禁止18岁以下观众入内
  • 网站后台 设计1688外贸
  • 做网站用框架么云相册网站怎么做
  • 万网网站后台登陆织梦移动端网站怎么做
  • 做网站用php还是html58同城最新招聘信息今天
  • 网站网址没有被百度收录青岛logo设计
  • 乌海网站建设三只松鼠网络营销方案策划书
  • 做同城网站需要哪些手续推广团队在哪里找
  • 佛山网站建设专业定制网站页脚怎么做能好看点
  • 自建网站 做自定义导航精准信息预测
  • 亚马逊做国际外贸在哪个网站设计说明万能模板500字
  • 外贸网站怎样做大庆油田内网主页网址
  • 百度公司给做网站吗哪个网站的前台背景墙做的好
  • 网站数据抓取怎么做安阳县事业单位招聘2021
  • 手机微网站建设方案手机模板网站下载
  • 淄博高端网站网络运维培训