![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 65
yaksa雅客
这个作者很懒,什么都没留下…
展开
-
基础算法——数据结构
数据结构(ACM)单链表双链表栈单调栈队列单调队列 以下算法均为用数组替代迭代器来进行(除了最后的stl),是针对算法竞赛而使用的,使用数组进行代码实现时间复杂度比用stl少,但会浪费部分空间,因此不考虑实际项目. 单链表 一.主体思想 使用value[N]数组储存当前位置的值,用nex[N]数组存储当前位置的下一个指向下一个位置,head存储头节点的指向,flag为当前位置. 二.重要代码 (1).链表初始化 当前位置为0,头结点指向空 代码: void init() { head = -1原创 2021-05-19 13:53:29 · 146 阅读 · 0 评论 -
Early Orders——单调栈
Early Orders 题目链接:牛客竞赛:https://ac.nowcoder.com/acm/problem/218908 题目大意: 给你一个长度为n的数组,求其中一个字典序最小长度为k的子序列,并且此子序列中每个数只出现一次(即为1到k). 测试数据: 输入 6 3 3 2 1 3 1 3 输出 2 1 3 输入 10 5 5 4 3 2 1 4 1 1 5 5 输出 3 2 1 4 5 解题思路: 遍历这个数组,对每个数据判断是否入栈,让栈为从小到大的顺序(除非当前数字在原创 2021-05-13 10:03:20 · 95 阅读 · 0 评论