
数据结构与算法
FeatureOverload
github.com/RDpWTeHM
展开
-
【Leetcode】54. Spiral Matrix -- 我想到了逆时针动 matrix 而不动指针,我知道 zip 可以转置矩阵,但是我却没有写出 one-liner
我想到了逆时针动 matrix 而不动指针,我知道 zip 可以转置矩阵,但是我却没有写出 one-liner ????Overviewleetcode#54. Spiral MatrixOne-Liner简化逆时针旋转辅助函数递归简化one-linerReferenceleetcode#54. Spiral Matrix【描述】:Given a matrix of m x n elements (m rows, n columns), return all elements of the mat原创 2020-08-15 13:18:45 · 259 阅读 · 0 评论 -
【Leetcode】单调栈问题--739.DailyTemperatures;769.MaxChunksToMakeSorted;84.LargestRectangleinHistogram;85
Desc: n/aOverview单调栈《程序员代码面试指南》CH1-栈与队列 -- 单调栈结构Leetcode#739. Daily TemperaturesLeetcode#769. Max Chunks To Make SortedLeetcode#?. Max Chunks To Make Sorted IILeetcode#84. Largest Rectangle in HistogramLeetcode#85. Maximal Rectangle相关数据结构与算法Reference单调栈原创 2020-08-10 20:10:19 · 221 阅读 · 0 评论 -
【Leetcode】997. Find the Town Judge(找到小镇法官) - 社会名流问题
Desc: N/AOverview社会名流问题997. Find the Town JudgeReference社会名流问题接下来的这个例子是算法设计中的一个常见习题,这是一个不需要扫描所有数据(或者绝大部分)就能得到解答的很好例子。在n个人中,有一个被所有人知道但却不知道别人的人,这个人被定义为社会名流。现在的问题是如果存在,试找出社会名流。你可以使用的唯一方式是询问:“对不起,请问你知道某某人吗?”(假定所有回答都正确,甚至这位社会名流也将回答。)我们的目标是将问题的数目最小化。由于有 n(原创 2020-08-06 23:08:39 · 527 阅读 · 0 评论 -
【Leetcode】二进制解法题目整理(包括与、或、XOR逻辑运算) - 更新中
Overview注:草稿,题目细节内容待更新。1342. Number of Steps to Reduce a Number to Zero1356. Sort Integers by The Number of 1 Bits1374. Generate a String With Characters That Have Odd Counts注:草稿,题目细节内容待更新。1342. Number of Steps to Reduce a Number to Zero2020/07/22Giv原创 2020-07-27 14:38:38 · 675 阅读 · 0 评论 -
【Python】反转字符串的很多很多种方法及部分解算法题应用
Desc: n/aOverview1. 反转字符串1.1 切片法1.2 reverse 函数1.3 高阶函数 reduce1.4 递归1.5 堆栈1.6 语言特性无关的 for 循环1.7 列表推导表达式2. 解题应用2.1 判断回文字符串2.2 反转字符串中的单词(word)Reference1. 反转字符串1.1 切片法def reverse_string1(s: str) -> str: return s[::-1]1.2 reverse 函数a.def reverse原创 2020-06-11 16:40:13 · 292 阅读 · 0 评论 -
【Leetcode】数组问题整理笔记
Overview283. Move ZeroesReference283. Move ZeroesSolution:class Solution: def get_zero_count(self, nums): ret = 0 for i in nums: if i == 0: ret +=...原创 2019-07-13 15:42:25 · 627 阅读 · 0 评论 -
【Leetcode】#Easy# 双指针解决数组问题
Overview674. Longest Continuous Increasing Subsequence830. Positions of Large GroupsReference674. Longest Continuous Increasing Subsequencesolved at 2019.12.25Given an unsorted array of integers, ...原创 2019-12-25 17:17:43 · 315 阅读 · 0 评论 -
【算法】计数排序和桶排序 - 笔记
Overview计数排序桶排序 - 待续计数排序在书上看到计数排序,实现上觉得确实巧妙,对思维有所拓展,所以这里做个笔记。计数排序的主要思路就是“地址”<=和=> “值”的等价切换。原理如图示:一个很不错的故事:和这个算法有关的更多介绍和解释:其实我在看完这个计数排序之后,想到如果范围不是 [0, k) 呢?那么是否要对数据做个初步运算,比如确认范围只会落在...原创 2019-06-12 00:48:46 · 169 阅读 · 0 评论 -
【算法】排序算法(快速排序) - Partition - 联系到堆 - 堆数据结构基础 - 个人算法要点简记
Overview1 Partition2 应用2.1 Quick Sort2.2 第(前) K 大(小)的数2.2.1 Partition 解法2.2.2 大数据集 - 堆解法3 关于堆3.1 实现3.2 应用3.2.1 一、 堆排序 - $O(nlogn)$3.2.2 二、上文的找“第(前) K 大(小)的数”Reference1 Partition要点:pivot返回值:k,x...原创 2019-06-14 10:28:23 · 512 阅读 · 0 评论 -
【C】【OOPC】【链表】一份在递归函数中可用的 List 实现 - 实例:深度优先遍历算法遍历树结构获取树末端节点的值
Overview1 树 - 数据结构1.1 树 - 图示1.2 抽象程序语言内的树结构1.3 树结构实现代码1.4 初始化和构造树-实例对象2 遍历树算法 - 深度优先算法递归实现3 OOPC 链表实现Reference附附 A附 B附 C附 D提醒: 这篇博客很长,代码有点儿长,内容有点儿难度1 树 - 数据结构1.1 树 - 图示这里的树数据结构使用的是 TR098 model 作...原创 2019-06-02 01:02:45 · 644 阅读 · 0 评论 -
【算法】【Python】遍历“评论”树 - 递归/迭代 x 广度/深度优先 4 种实现
Overview问题Solution问题评论树(数据结构):doc = [ {'id': '100', 'name': "jack", 'children': [ {'id': '110', 'name': "jack01", 'children': ...原创 2019-05-30 23:29:29 · 515 阅读 · 0 评论 -
【LeetCode】使用递归方案解决 17. Letter Combinations of a Phone Number,再记忆体化递归
17. Letter Combinations of a Phone Number分析草稿草稿实现(递归算法)注:细节上略有错误,逻辑/算法原理上没有问题递归算法最终实现class Solution: def letterCombinations(self, digits): mapping = {1: '*', 2: 'abc', 3: 'def', ...原创 2019-04-27 14:08:45 · 312 阅读 · 0 评论 -
动态规划算法解决背包问题思路及 Python 实现 | 注:仅有分析过程代码,没有解释代码
本文背包问题选自 《算法图解》一书 问题示例(背包问题)简单解法动态规划Python 代码实现(动态规划)问题示例(背包问题)简单解法动态规划注:中间图示略。以下跳到最后一行:Python 代码实现(动态规划)注意,这里的一步一步实现过程很详细。但是目前没有用语言解释代码,请悉知。# wigth, worthproduc...原创 2019-04-26 12:20:36 · 1008 阅读 · 0 评论