文件名称:leetcode算法题主函数如何写-leetcode:leetcode.com中的问题代码
文件大小:54KB
文件格式:ZIP
更新时间:2024-07-19 22:59:26
系统开源
leetcode算法题主函数如何写 [toc] [17] 电话号码的字母组合 使用递归分治,弄清楚N和N-1的关系,递归起来还是挺容易的。 [20] 有效的括号匹配 使用栈来实现括号匹配。Python中没看到Stack数据结构,使用List来替代。 增加一个dic来存储括号的对应关系,可以简化代码,增加灵活性。 判断key也从字段中获取数据,进一步简化代码 栈预存一个?能够简化栈是否为空的判断,提高执行效率。速度快过70%变成速度快过94% [22] 括号生成 使用递归方式完成,关键是如何将问题拆解成更简单的子问题,这个估计要多做题才能解决。 [24] 两两交换链表中的节点 用递归很好理解,代码也简单,递归是个强大的工具。 [42] 接雨水 暴力解法,找每个位置可以存放的水是多少。找到左右边界。在此基础上存储每个位置的左右边界最大值能将时间复杂度从O(n^2)编程O(n). 使用栈解法 单调递减的栈很好用。 弄清楚做边界和右边界与面积的关系 使用双向指针法:根据暴力解法,使用双指针来求解。假设右边有一堵很高的强。左边要怎样才能存水?要看左边边界的高度和当前位置的高度。当前位置比较矮,就
【文件预览】:
leetcode-master
----105.从前序与中序遍历序列构造二叉树.py(1KB)
----106.从中序与后序遍历序列构造二叉树.py(1014B)
----141.环形链表.py(713B)
----242.有效的字母异位词.swift(835B)
----15.三数之和.py(1KB)
----589.n叉树的前序遍历.py(620B)
----144.二叉树的前序遍历.py(958B)
----52.n皇后-ii.py(1KB)
----15.三数之和.swift(1KB)
----169.多数元素.py(432B)
----1.两数之和.py(488B)
----236.二叉树的最近公共祖先.java(2KB)
----429.n叉树的层序遍历.py(869B)
----17.电话号码的字母组合.py(1KB)
----91.解码方法.swift(2KB)
----70.爬楼梯.swift(484B)
----455.分发饼干.swift(799B)
----20.有效的括号.py(1KB)
----88.合并两个有序数组.py(871B)
----126.单词接龙-ii.py(5KB)
----590.n叉树的后序遍历.py(618B)
----21.合并两个有序链表.py(610B)
----94.二叉树的中序遍历.py(908B)
----五毒神掌刷题记录.md(628B)
----107.二叉树的层次遍历-ii.swift(1KB)
----77.组合.swift(1KB)
----49.字母异位词分组.py(612B)
----11.盛最多水的容器.swift(1KB)
----22.括号生成.py(707B)
----88.合并两个有序数组.swift(805B)
----70.爬楼梯.py(307B)
----26.删除排序数组中的重复项.py(385B)
----46.全排列.swift(853B)
----105.从前序与中序遍历序列构造二叉树.swift(1KB)
----589.n叉树的前序遍历.java(950B)
----515.在每个树行中找最大值.py(1001B)
----122.买卖股票的最佳时机-ii.swift(198B)
----155.最小栈.py(876B)
----51.n-皇后.py(2KB)
----590.n叉树的后序遍历.java(1KB)
----47.全排列-ii.py(966B)
----ReadMe.md(15KB)
----77.组合.py(784B)
----206.反转链表.py(522B)
----283.移动零.swift(543B)
----189.旋转数组.py(612B)
----283.移动零.py(496B)
----46.全排列.py(723B)
----leetcode.code-workspace(66B)
----11.盛最多水的容器.py(688B)
----66.加一.py(457B)
----47.全排列-ii.swift(2KB)
----84.柱状图中最大的矩形.py(2KB)
----49.字母异位词分组.swift(732B)
----860.柠檬水找零.swift(916B)
----145.二叉树的后序遍历.swift(1KB)
----26.删除排序数组中的重复项.swift(735B)
----50.pow-x-n.py(496B)
----144.二叉树的前序遍历.swift(1KB)
----189.旋转数组.swift(887B)
----127.单词接龙.swift(3KB)
----106.从中序与后序遍历序列构造二叉树.swift(1KB)
----145.二叉树的后序遍历.py(1KB)
----24.两两交换链表中的节点.py(596B)
----21.合并两个有序链表.swift(2KB)
----66.加一.swift(508B)
----641.设计循环双端队列.py(2KB)
----64.最小路径和.swift(754B)
----98.验证二叉搜索树.py(1KB)
----42.接雨水.py(2KB)
----1.两数之和.swift(459B)
----239.滑动窗口最大值.py(1KB)
----167.两数之和-ii-输入有序数组.swift(518B)
----102.二叉树的层序遍历.py(930B)
----127.单词接龙.py(4KB)
----236.二叉树的最近公共祖先.py(2KB)
----78.子集.py(613B)