算法涅槃之路
文章平均质量分 56
个人算法笔记总结
Rex~
Make it work -> Make it right -> Make it fast
展开
-
剑指 Offer 30. 包含min函数的栈
定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。leetcode地址示例:MinStack minStack = new MinStack();minStack.push(-2);minStack.push(0);minStack.push(-3);minStack.min(); --> 返回 -3.minStack.pop();minStack.top(); --&g原创 2021-08-09 10:04:32 · 433 阅读 · 2 评论 -
剑指 Offer 09. 用两个栈实现队列
剑指 Offer 09. 用两个栈实现队列用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )题目Leecode地址示例 1:输入:[“CQueue”,“appendTail”,“deleteHead”,“deleteHead”] (这个数组代表函数执行过程)[[],[3],[],[]] (这个数组代表输入输出)输出原创 2021-08-05 23:51:42 · 349 阅读 · 1 评论 -
算法笔记:判断机器人在二位平面上行走的路径是否相交
题目给你一个字符串 path,其中 path[i] 的值可以是 ‘N’、‘S’、‘E’ 或者 ‘W’,分别表示向北、向南、向东、向西移动一个单位。机器人从二维平面上的原点 (0, 0) 处开始出发,按 path 所指示的路径行走。如果路径在任何位置上出现相交的情况,也就是走到之前已经走过的位置,请返回 True ;否则,返回 False 。示例 1:输入:path = “NES”输出:false解释:该路径没有在任何位置相交...原创 2020-12-07 09:48:00 · 3020 阅读 · 50 评论 -
算法笔记:最富有客户的资产总量
题目给你一个 m x n 的整数网格 accounts ,其中 accounts[i][j] 是第 i 位客户在第 j 家银行托管的资产数量。返回最富有客户所拥有的 资产总量 。客户的 资产总量 就是他们在各家银行托管的资产数量之和。最富有客户就是 资产总量 最大的客户。题目链接:力扣:最富有客户的资产总量思路 暴力法1.通过两层循环嵌套,内层循环:让二维数组每行全部数字相加。2.外层循环:用max()函数取大的数保存,再继续循环java实现class Solutio原创 2020-11-30 09:38:34 · 2096 阅读 · 39 评论