当前位置: 首页 > wzjs >正文

建设的比较好的网站下载百度app并安装

建设的比较好的网站,下载百度app并安装,企业网站制作深圳,服装加工厂怎么找客户目录 前言 一、二分查找 1. 搜索插入位置 2. 搜索二维矩阵 3. 在排序数组中查找元素的第一个和最后一个位置 4. 搜索旋转排序数组 5. 寻找旋转排序数组中的最小值 6. 寻找两个正序数组的中位数 二、技巧 1. 只出现一次的数字 2. 多数元素 3. 颜色分类 4. 下一个排列 5. 寻找重复…

目录

前言

一、二分查找

1. 搜索插入位置

2. 搜索二维矩阵

3. 在排序数组中查找元素的第一个和最后一个位置

4. 搜索旋转排序数组

5. 寻找旋转排序数组中的最小值

6. 寻找两个正序数组的中位数

二、技巧

1. 只出现一次的数字

2. 多数元素

3. 颜色分类

4. 下一个排列

5. 寻找重复数


前言

一、二分查找:搜索插入位置,搜索二维矩阵,在排序数组中查找元素的第一个和最后一个位置,搜索旋转排序数组,寻找旋转排序数组中的最小值,寻找两个正序数组的中位数。

二、技巧:只出现一次的数字,多数元素,颜色分类,下一个排列,寻找重复数。


一、二分查找

1. 搜索插入位置

原题链接:35. 搜索插入位置 - 力扣(LeetCode)

# 解法(1)
class Solution(object):def searchInsert(self, nums, target):if target in nums:return nums.index(target)else:nums.insert(0, float('-inf'))nums.insert(len(nums), float('inf'))for i, n in enumerate(nums):if nums[i] < target and nums[i+1] > target:return i# 解法(2)
class Solution(object):def searchInsert(self, nums, target):for k,v in enumerate(nums):if target<=max(nums):if v<target:continuereturn kelse:return len(nums)
2. 搜索二维矩阵

原题链接:74. 搜索二维矩阵 - 力扣(LeetCode)

class Solution(object):def searchMatrix(self, matrix, target):matrix = sum(matrix, [])if target in matrix:return Truereturn False
3. 在排序数组中查找元素的第一个和最后一个位置

原题链接:34. 在排序数组中查找元素的第一个和最后一个位置 - 力扣(LeetCode)

# 解法(1)
class Solution(object):def searchRange(self, nums, target):if target not in nums:return [-1, -1]else:left = nums.index(target)nums.sort(reverse=True)right = len(nums)- nums.index(target) - 1 return [left, right]# 解法(2)
class Solution(object):def searchRange(self, nums, target):lst = []for k,v in enumerate(nums):if v==target:lst.append(k)if not lst:lst = [-1,-1]return [min(lst), max(lst)]
4. 搜索旋转排序数组

原题链接:33. 搜索旋转排序数组 - 力扣(LeetCode)

class Solution(object):def search(self, nums, target):if target in nums:return nums.index(target)else:return -1
5. 寻找旋转排序数组中的最小值

原题链接:153. 寻找旋转排序数组中的最小值 - 力扣(LeetCode)

class Solution(object):def findMin(self, nums):return min(nums)
6. 寻找两个正序数组的中位数

原题链接:4. 寻找两个正序数组的中位数 - 力扣(LeetCode)

class Solution(object):def findMedianSortedArrays(self, nums1, nums2):num = nums1 + nums2num.sort()ln = len(num) if ln % 2 == 0:mid = (num[ln//2-1] + num[ln//2]) / 2.0else:mid = num[ln//2]return mid

二、技巧

1. 只出现一次的数字

原题链接:136. 只出现一次的数字 - 力扣(LeetCode)

# 解法(1)
class Solution(object):def singleNumber(self, nums):return sum(set(nums))*2 - sum(nums)# 解法(2)
class Solution(object):def singleNumber(self, nums):from collections import Countercnt = Counter(nums)for k, v in cnt.items():if v == 1:return k
2. 多数元素

原题链接:169. 多数元素 - 力扣(LeetCode)

# 解法(1)
class Solution(object):def majorityElement(self, nums):nums.sort()return nums[len(nums)//2]# 解法(2)
class Solution(object):def majorityElement(self, nums):from collections import Countercnt = Counter(nums)for k, v in cnt.most_common(1):return k
3. 颜色分类

原题链接:75. 颜色分类 - 力扣(LeetCode)

class Solution(object):def sortColors(self, nums):return nums.sort()   
4. 下一个排列

原题链接:

5. 寻找重复数

原题链接:287. 寻找重复数 - 力扣(LeetCode)

# 解法(1)
class Solution:def findDuplicate(self, nums: List[int]) -> int:from statistics import modereturn mode(nums)# 解法(2)
class Solution(object):def findDuplicate(self, nums):from collections import Countercnt = Counter(nums)for k, v in cnt.most_common(1):return k
http://www.dtcms.com/wzjs/231529.html

相关文章:

  • wordpress随机合肥百度seo排名
  • 学网站开发的培训学校seo短视频发布页
  • 品牌网站建设-建站之路账户竞价托管费用
  • 县级新闻网站建设武汉网站建设方案优化
  • 公司做网站怎么赚钱企业短视频推广
  • 网站建设价格槽闸阀发布外链的平台有哪些
  • 建筑公司做网站买空间多大合适合肥360seo排名
  • 一个网站的二维码怎么做独立站
  • 无锡网站制作怎么样百度游戏排行榜风云榜
  • 个人做医疗类网站违法商务软文写作范文200字
  • 门头沟区专业网站制作网站建设seo网站关键词优化费用
  • 免费企业网站建设介绍关键词推广是什么
  • 西安教育平台网站建设网络推广怎么做才有效
  • dede手机网站仿站百度移动端模拟点击排名
  • wordpress 图片 点击 放大湖南关键词优化品牌价格
  • 网站页面设计布局百度竞价是什么意思
  • 网站建设费用 优帮云百度seo通科
  • 什么网站可以兼职做平面设计企业网络营销方案策划
  • 用php做网站用什么软件广东宣布即时优化调整
  • 网站php网站空间谷歌商店paypal下载官网
  • 静态网页托管武汉seo
  • 重庆网站建设设计公司哪家好搜索引擎优化是指什么意思
  • 青阳做网站小吃培训机构排名前十
  • 做网站哪个比较好武汉seo招聘
  • 网站空间怎么续费鹤壁seo推广
  • 申诉网站风险技术培训平台
  • 网站平台专题如何制作培训机构管理系统
  • 怎么下载自己做的网站品牌推广包括哪些内容
  • 马云做中国最大的网站荆州网站seo
  • 太原网站建设价格重庆公司seo