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

做网站 信科网络软文媒体

做网站 信科网络,软文媒体,电脑版网页游戏,郑州网站建设 服务创业文章目录 题目输入格式输出格式输入样例输出样例 题解解题思路完整代码 编程练习题目集目录 题目 Given a constant K K K and a singly linked list L L L, you are supposed to reverse the links of every K K K elements on L L L. For example, given L being 1 → …

文章目录

  • 题目
    • 输入格式
    • 输出格式
    • 输入样例
    • 输出样例
  • 题解
    • 解题思路
    • 完整代码

编程练习题目集目录

题目

  Given a constant K K K and a singly linked list L L L, you are supposed to reverse the links of every K K K elements on L L L. For example, given L being 1 → 2 → 3 → 4 → 5 → 6 1→2→3→4→5→6 123456, if K = 3 K=3 K=3, then you must output 3 → 2 → 1 → 6 → 5 → 4 3→2→1→6→5→4 321654; if K = 4 K=4 K=4, you must output 4 → 3 → 2 → 1 → 5 → 6 4→3→2→1→5→6 432156.

输入格式

  Each input file contains one test case. For each case, the first line contains the address of the first node, a positive N ( ≤ 1 0 5 ) N(≤10^5) N105 which is the total number of nodes, and a positive K ( ≤ N ) K(≤N) KN which is the length of the sublist to be reversed. The address of a node is a 5-digit nonnegative integer, and NULL is represented by − 1 -1 1.

  Then N N N lines follow, each describes a node in the format:

Address Data Next

  where Address is the position of the node, Data is an integer, and Next is the position of the next node.

输出格式

  For each case, output the resulting ordered linked list. Each node occupies a line, and is printed in the same format as in the input.

输入样例

00100 6 4
00000 4 99999
00100 1 12309
68237 6 -1
33218 3 00000
99999 5 68237
12309 2 33218

输出样例

00000 4 33218
33218 3 12309
12309 2 00100
00100 1 99999
99999 5 68237
68237 6 -1

题解

解题思路

  使用两个数组 d a t a data data n e x t next next 分别存储每个节点的数据和指向下一个节点的指针。从头节点开始,按顺序将节点的地址存储在数组 l i s t list list 中,构建链表的顺序结构。将 l i s t list list 中的节点按分组大小 K K K 进行反转。将反转后的节点顺序存储在结果数组 r e s u l t result result 中,即可。

完整代码

#include <iostream>
using namespace std;int main(void) {int number, k, n, sum = 0;cin >> number >> n >> k;int temp, data[100005], next[1000005], list[100005], result[100005];// 读取链表节点信息for (int i = 0; i < n; i++) {cin >> temp;cin >> data[temp] >> next[temp];}// 构建初始链表顺序while (number != -1) {list[sum++] = number;number = next[number];}// 复制初始链表到结果数组for (int i = 0; i < sum; i++) result[i] = list[i];// 按照分组大小 K 反转链表中的每个分组for (int i = 0; i < (sum - sum % k); i++)result[i] = list[i / k * k + k - 1 - i % k];// 输出反转后的链表for (int i = 0; i < sum - 1; i++)printf("%05d %d %05d\n", result[i], data[result[i]], result[i + 1]);printf("%05d %d -1", result[sum - 1], data[result[sum - 1]]);return 0;
}
http://www.dtcms.com/wzjs/103708.html

相关文章:

  • 地方性网站赚钱营销型网站有哪些功能
  • 企业网站色彩搭配东莞疫情最新数据
  • 番禺建设网站系统互联网营销方式有哪些
  • 粉末涂料做网站有用吗网站设计制作哪家好
  • 彩票网站搭建多钱百度官网首页官网
  • 考网站开发工程师软文推广代理平台
  • 免费做的英文网站个人开发app可以上架吗
  • 鹤岗手机网站建设网络公司的推广
  • 长沙县营销型网站建设选哪家whois查询 站长工具
  • 政府网站建设工作会讲话网站优化要做哪些
  • 宣传网站开发百度上传自己个人简介
  • 榆次做网站站长检测工具
  • 昆山推广用什么网站比较好北京搜索优化排名公司
  • 印刷报价网站源码广州seo实战培训
  • 做ipo尽调需要用到的网站免费测试seo
  • 自己可以做百度网站吗阿里云域名购买
  • 网站建设预付百度指数是免费的吗
  • 微信公众号搭建网站深圳电子网络推广查询
  • 六安网站关键词排名优化报价企业策划方案怎么做
  • 鲜花商城网站建设域名解析查询工具
  • 哪些网站可以做视频直播贴吧友情链接在哪
  • 北京网络建站百度一下百度一下百度一下
  • 1高端网站建设it培训机构排名及学费
  • 南京哪里有做公司网站的百度识图在线入口
  • 如何用java web做网站深圳seo优化服务商
  • 建设银行信用卡网站广告投放平台排名
  • 网站开发服务费计入什么科目免费注册网站有哪些
  • 番禺网站建设公司成品网站源码在线看
  • 重庆做学校网站公司免费建立网站步骤
  • 网站升级方案外包公司排名