数据结构
程序员小豪
阿里云专家博主,全栈工程师,曾于蔚来、腾讯实习,现任职于某大厂,技术栈:Vue,React,Python,Java
展开
-
kmp算法模板
临近期末了,要开始复习了,先复习一下数据结构的kmp算法吧 求next数组的代码 void Getnext(string t) { int j = 0, k = -1; nex[0] = -1; while (j < t.length()) { if (k == -1 || t[j] == t[k]) { j++; k++; nex[j] = k; } else k = nex[k]; } } kmp算法 int kmpmatach(string ms, s原创 2021-06-18 17:07:04 · 169 阅读 · 0 评论 -
2021-03-27
问题 D: DS双向链表—祖玛 时间限制:1 Sec内存限制:128 MB 提交:211解决:85 [提交][状态][讨论版] 题目描述 祖玛是一款曾经风靡全球的游戏,其玩法是:在一条轨道上初始排列着若干个彩色珠子,其中任意三个相邻的珠子不会完全同色。此后,你可以发射珠子到轨道上并加入原有序列中。一旦有三个或更多同色的珠子变成相邻,它们就会立即消失。这类消除现象可能会连锁式发生,其间你将暂时不能发射珠子。 给定轨道上初始的珠子序列,然后是玩家所做的一系列操作。你的任务是,在各次操作...原创 2021-03-27 19:36:34 · 273 阅读 · 0 评论 -
2021-03-27
问题 C: DS双向链表—前驱后继 时间限制:1 Sec内存限制:128 MB提交:169解决:129 [提交][状态][讨论版] 题目描述 在双向链表中,A有一个指针指向了后继节点B,同时,B又有一个指向前驱节点A的指针。这样不仅能从链表头节点的位置遍历整个链表所有节点,也能从链表尾节点开始遍历所有节点。 对于给定的一列数据,按照给定的顺序建立双向链表,按照关键字找到相应节点,输出此节点的前驱节点关键字及后继节点关键字。 输入 第一行两个正整数n(代表节点个数),...原创 2021-03-27 19:34:54 · 116 阅读 · 0 评论 -
2021-03-27
问题 B: DS单链表—删除重复元素 时间限制:1 Sec内存限制:128 MB 提交:128解决:77 [提交][状态][讨论版] 题目描述 给定n个整数,按输入顺序建立单链表,删除其中的重复数字,输出结果链表。(要求不可以构建新结点,不可以定义新链表。在原链表上删除。) 输入 测试次数t 每组测试数据一行: n(表示有n个整数),后跟n个数字 输出 对每组测试数据,输出删除重复数字后的结果链表表长和每个元素,具体格式见样例。 样例输入 3 1...原创 2021-03-27 19:32:45 · 236 阅读 · 0 评论 -
2021-03-27
问题 A: DS循环链表—约瑟夫环(Ver. I - A) 时间限制:1 Sec内存限制:128 MB 提交:269解决:132 [提交][状态][讨论版] 题目描述 N个人坐成一个圆环(编号为1 - N),从第S个人开始报数,数到K的人出列,后面的人重新从1开始报数。问最后剩下的人的编号。 例如:N = 3,K = 2,S = 1。2号先出列,然后是1号,最后剩下的是3号。 要求使用循环链表实现。 输入 第一行输入t,表示有t个测试用例; 第二行起,每行输入一组数据,包括...原创 2021-03-27 19:29:43 · 173 阅读 · 0 评论