算法
文章平均质量分 53
I_LOVER
能打倒自己的唯有自己
展开
-
sorted的key的一个比较取巧的用法
sorted的key的使用原创 2022-12-30 14:14:12 · 571 阅读 · 0 评论 -
【无标题】
力扣 155 辅助栈原创 2022-11-19 14:05:38 · 718 阅读 · 0 评论 -
二叉树-算法题
前话: 二叉树的深度优先搜素和广度优先搜索:1、广度优先搜索(BFS) 宽度优先搜索写为BFS,其过程检验来说就是对每一层节点依次访问,访问这一层浸润下一层,而且每个节点只能访问一次。对于上面的例子来说,广度优先遍历的结果是:3->9->20->15->7。 宽度优先遍历各个节点,需要使用队列这种数据结构,queue的特点是先进先...原创 2020-01-05 20:00:15 · 249 阅读 · 0 评论 -
动态规划-算法题
题目:来源leetcode 70.爬楼梯 假如当前有n阶台阶,在n-2阶和n-1阶有两种选择,方法等于n-2阶和n-1阶的方法之和: class Solution: def climbStairs(self, n: int) -> int: a = [] a.append(1) a.append(2)...原创 2020-01-04 12:37:47 · 262 阅读 · 0 评论 -
指针-算法题
1、来源:力扣(LeetCode)第88题:合并两个有序数组 解法1:双指针从前往后 对于有序数组可以通过双指针法达到O(n + m)的时间复杂度 最直接的算法实现时将指针p置为nums1的开头,p为nums2的开头,在每一步将最小值放入到输出数组中,由于nums1是用于输出的数组,需要将nums1中的前m个元素放在其他地方,也就需要O(m...原创 2020-01-04 12:17:49 · 328 阅读 · 0 评论 -
python基本数据结构:栈、队列、双端队列、链表和二叉树
一、栈1.1、什么是栈 栈(有时称为“后进先出栈”)是一个项的有序集合,其中添加移除新项总发生在同一端。这一端通常称为“顶部”。与顶部对应的端称为“底部”。栈的底部很重要,因为在栈中靠近底部的项是存储时间最长的。最近添加的项是最先会被移除的。这种排序原则有时被称为 LIFO,后进先出。它基于在集合内的时间长度做排序。较新的项靠近顶部,较旧的项靠近底部。 栈的例子...原创 2019-04-09 22:08:45 · 577 阅读 · 0 评论