
LeetCode
文章平均质量分 72
LeetCode
pcj_888
这个作者很懒,什么都没留下…
展开
-
【LeetCode】常用数据结构和算法(C++, Python)
LeetCode C++/Python 常用数据结构和算法原创 2023-05-09 11:12:11 · 149 阅读 · 0 评论 -
【LeetCode 664】奇怪的打印机
题目描述 https://leetcode-cn.com/problems/strange-printer 解题思路 贪心法找不到明显思路,尝试动态规划求解。 1、 先明确动归问题的定义: 记f[i][j]为完成第i个字符到第j个字符的最少打印次数。记字符串s长度为n,则f[0][n-1]即为所求。 2、 将问题拆分成子问题,推导递推方程: 可以将区间[i, j]分解成[i, k],[k + 1, j] (其中i <= k < j),完成[i, j]打印问题转化为分别完成[i, k], [k +原创 2021-08-15 12:43:20 · 247 阅读 · 0 评论 -
【LeetCode】链表题解决思路
前言 LeetCode链表题汇总,记录解题思路,C/C++语言实现。 LeetCode链表题 判断链表是否有环 :https://leetcode-cn.com/problems/linked-list-cycle/ 输出环形链表的入环点:https://leetcode-cn.com/problems/linked-list-cycle-ii/ 输出链表中倒数第k个节点:https://leetcode-cn.com/problems/lian-biao-zhong-dao-shu-di-kg原创 2021-02-06 17:31:09 · 350 阅读 · 0 评论 -
【LeetCode 1206】 设计跳表,C语言实现
跳跃表简介 跳跃表是一种以O(log N)期望时间支持查找、插入、删除操作的、有序的数据结构。其性能和红黑树相当,且跳跃表实现更为简单。 如何理解”跳跃“二字 首先,考察一个有序的单链表。如下图所示,该链表由8个元素组成,为了查找元素14,需要依次遍历 2 -> 4 -> 6 -> 8 -> 10 -> 12 -> 14, 共考察7个节点。考察的节点数正比于链表长度,查找的时间复杂度为O(n),效率很低。 为了加快查找速度,可以对单链表进行改造,每隔一个节点新增原创 2020-12-05 20:42:12 · 1678 阅读 · 4 评论