自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 python实现归并排序

归并排序def mergeSort(nums, start, end): if start >= end: return mid = (start + end) // 2 mergeSort(nums, start, mid) # 拆分 mergeSort(nums, mid+1, end) merge(nums, start, mid, end) # 合并 return numsdef merge(nums, start,

2020-09-17 16:18:28 97

原创 python实现快排序

快排序def QuickSort(nums, low, high): if low >= high: return pos = FindPos(nums, low, high) QuickSort(nums, low, pos-1) QuickSort(nums, pos+1, high) return numsdef FindPos(nums, low, high): val = nums[low] while l

2020-09-17 10:46:02 107

原创 刷题——剑指Offer 32.之字形打印二叉树

题目请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。题目链接:之字形打印二叉树例: 3 / \ 9 20 / \ 15 7输出: [[3], [20,9], [15,7] ]思路此题目是剑指Offer中的“从上到下打印二叉树”的变种题,原题目中只需按照层次遍历的形式打印即可,其中..

2020-09-07 22:44:44 110

原创 刷题——剑指Offer 10. 青蛙跳台阶

题目一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n级的台阶总共有多少种跳法。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。题目链接:青蛙跳台阶思路这是一道比较经典的算法题,并且有多个变种题,比如一次可以跳n个台阶,或者上次做的字节跳动的笔试题,在该题上加了一个限制:不能连续跳两次台阶。这道题主要的解法也有两种,一个是递归,一个是动态规划,个人感觉这道题可以算是动态规划思想的入门题,能很好地理解动态规划的.

2020-09-07 16:36:27 166

原创 刷题——剑指Offer 48.最长不含重复字符的子字符串

题干请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。题目链接:剑指 Offer 48. 最长不含重复字符的子字符串例:输入 "abcabcbb" 输出 3 输入 "bbbbb" 输出 1思路1.暴力滑动窗口此方法是我看了滑动窗口的描述后自己写的,没参考别人的设计但是时间消耗不忍直视。我在我的解法中设计了一个辅助空串helper和用于记录最大长度的n,之后将原字符串s遍历并判断:对于s中的每一个字符_...

2020-09-06 19:14:11 135

原创 刷题——剑指Offer 64.求1+2+…+n

题干求1+2+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。思路1.递归 (会使用if判断)博主太菜了,之前从没刷过算法题,现在写个简单的递归都费劲,看了别人的设计才自己写出来。看到这道题第一个想到的方法就是递归,虽然破坏了题干中的限制,但是想到了这个方法就记录一下吧。class Solution(object): def sumNums(self, n): if n == 1..

2020-09-06 18:25:17 85

原创 python实现直接插入排序

python实现直接插入排序class Solution: def InsertOrder(self, nums): nums.insert(0,0) # 使0索引位置为“哨兵” p = 0 # 存放需要插入元素的位置 for i in range(2, len(nums)): if nums[i] < nums[i-1]: nums[0] = nums[i]

2020-08-31 16:06:03 192

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除