![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
文章平均质量分 91
red_velvet_cake
努力成长中
展开
-
【Python】刷题常用语法汇总
Python刷题常用语法汇总一、字符串操作字符串是不可更改的对象,因此无法直接修改字符串的某一位字符。 一种可行的方式是:将字符串转换为列表,修改列表的元素后,再重新连接为字符串。s = "thisisastring"l = list(s)l[0] = "T"print(''.join(l))join() 方法:用于将序列中的元素以指定的字符连接生成一个新的字符串。 def join(self, ab=None, pq=None, rs=None): """原创 2020-09-28 19:46:40 · 961 阅读 · 0 评论 -
【Leetcode】编程实践学习Task05:查找——滑动数组&二分查找
Task 05:滑动数组&二分查找练习题合集二分查找35、540、410滑动数组219、220leetcode 35. 搜索插入位置题目描述给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例 :输入: [1,3,5,6], 5输出: 2输入: [1,3,5,6], 2输出: 1输入: [1,3,5,6], 7输出: 4输入: [1,3,5,6], 0输出:原创 2020-08-28 21:51:58 · 158 阅读 · 0 评论 -
【Leetcode】编程实践学习Task04:查找——对撞指针
Task 04:对撞指针练习题合集leetcode 1、15、18、16、454、49、447、149leetcode 1. 两数之和题目描述给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例 :给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回原创 2020-08-27 09:56:48 · 134 阅读 · 0 评论 -
【Leetcode】编程实践学习Task03:查找——查找表
Task 03:查找表查找表基本数据结构set–查找有无:set中不允许重复dict–查找对应关系(键值对应):dict中的键不允许重复map–改变映射关系练习题合集leetcode 349、350、242、202、290、205、451leetcode 349. 两个数组的交集题目描述给定两个数组,编写一个函数来计算它们的交集。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2]示例 2:输入:nums1 = [4,9,原创 2020-08-25 09:29:45 · 135 阅读 · 0 评论 -
【Leetcode】编程实践学习Task01:分治
Task 01:分治分治算法分治算法的主要思想将原问题递归地分成若干个子问题,直到子问题满足边界条件 ,停止递归。将子问题逐个击破(一般是同种方法),将已经解决的子问题合并,最后,算法会层层合并得到原问题的答案。分治算法的步骤:1.分: 递归地将问题分解为各个性质相同的、相互独立的子问题;2.治: 将这些规模更小的子问题逐个击破;3.合: 将已解决的子问题 逐层合并,最终得出原问题的解;leetcode 169. 多数元素题目描述给定一个大小为 n 的数组,找到其中的多数元素。多数原创 2020-08-17 16:28:04 · 110 阅读 · 0 评论 -
【Leetcode】编程实践学习Task02:动态规划
Task 02:动态规划动态规划适用条件动态规划常常适用于有重叠子问题和最优子结构性质的问题,动态规划方法所消耗的时间远远少于朴素解法。动态规划主要思想若要解一个给定问题,我们需要解其不同部分(即子问题),再根据子问题的解以得出原问题的解。动态规划往往用于优化递归问题,例如斐波那契数列,如果运用递归的方式来求解会重复计算很多相同的子问题,利用动态规划的思想可以减少计算量。动态规划法仅仅解决每个子问题一次,具有天然剪枝的功能,从而减少计算量,一旦某个给定子问题的解已经算出,则将其记忆化存储,以原创 2020-08-22 11:28:28 · 203 阅读 · 0 评论