算法笔记
文章平均质量分 81
图灵的喵酱
这个作者很懒,什么都没留下…
展开
-
leetcode刷题之栈与队列
例题1有效的括号20. 有效的括号 - 力扣(LeetCode)给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。此题是栈的经典应用,遇到左括号压栈,遇到右括号则弹出栈并与之匹配,如果不匹配直接返回false最后判断栈是否为空,栈不为空也返回falsepublic boolean isValid(String s) { Stack<Chara原创 2022-05-14 21:42:06 · 334 阅读 · 0 评论 -
leetcode刷题之数字之和——双指针法|哈希法
例题1两数之和1. 两数之和 - 力扣(LeetCode)给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。public int[] twoSum(int[] nums, int target) { if(nums==null || nums.length==0) return null;原创 2022-05-13 23:27:31 · 279 阅读 · 0 评论 -
leetcode刷题之环形链表
142. 环形链表 II - 力扣(LeetCode)方法一哈希方法方法二快慢指针原创 2022-05-11 11:12:00 · 232 阅读 · 0 评论 -
算法笔记之回溯法(一)——溯洄从之,道阻且长;溯游从之,宛在水中央。
回溯法理论基础回溯法是一种搜索算法,从本质上来说,回溯法是一种穷举法,穷尽其所有可能而举其可行解;尽管回溯法有剪枝等操作,但也只是去除一些明显不可行的部分,仍改变不了回溯法暴力搜索的本质。虽然回溯法是一种暴力求解算法,但很多时候我们也只能选择这种算法。回溯法是以深度优先的方式系统地搜索问题的解,它适用于解一些组合数较大的问题。回溯法可以解决的问题组合问题:从n个数的集合中选出k个数的组合问题排列问题:对n个数进行排列有多少种排列方法子集问题:一个集合种有多少符合条件的子集问题棋盘问题:典型原创 2022-03-05 20:23:11 · 966 阅读 · 0 评论