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

做网站税率百度站长平台网址

做网站税率,百度站长平台网址,有没有什么专门做兼职的网站,网站如何做搜索引擎数组理论基础 1.数组是存放在连续内存空间上的相同类型数据的集合。 2.数组的元素是不能删除的,只能覆盖。 3.不同语言不一样,在C中,二维数组是连续分布的 704.二分查找 题目 思路与解法 第一想法: 简单的二分查找&#xff0c…

数组理论基础

1.数组是存放在连续内存空间上的相同类型数据的集合。
2.数组的元素是不能删除的,只能覆盖。
3.不同语言不一样,在C++中,二维数组是连续分布的

704.二分查找

题目

题目

思路与解法

第一想法: 简单的二分查找,三个指针:left、right、mid。while left <= right 就持续进行二分查找。若是直到 left > right 都没找到,就是找不到了。

class Solution:def search(self, nums: List[int], target: int) -> int:left = 0right = len(nums) - 1while left <= right :mid = (left + right) // 2if target == nums[mid]:return midelif target < nums[mid]:right = mid -1else:left = mid + 1return -1

carl的讲解: 二分法有一个比较重要的思想 循环不变量。循环不变量 是指,在二分查找中,保持不变量(区间的定义就是不变量),就是在while寻找每一次边界的 处理逻辑 都要坚持根据区间的定义来操作。简单来说,怎么定义区间,就决定了数据取舍的逻辑。

27.移除元素

题目

移除元素

思路与解法

第一想法:
1.暴力法,找到一个就把后面的提上来,如下:

class Solution:def removeElement(self, nums: List[int], val: int) -> int:lens = len(nums)i = 0while i < lens:# print(i)if nums[i] == val:# print(nums[i])j  = iwhile j < lens-1 :nums[j] = nums[j+1]j += 1lens = lens - 1else:i = i + 1print(lens)return lens

2.快慢指针。慢指针是最终结果,快指针是用于遍历。 起初,快指针一直往后遍历,当值不等于value时,慢指针等于快指针;当遇到与value相同的值时,慢指针停下,快指针继续往后。如下:

class Solution:def removeElement(self, nums: List[int], val: int) -> int:slow = fast = 0lens = len(nums)while fast < lens:if nums[fast] != val:nums[slow] = nums[fast]slow += 1fast += 1elif nums[fast] == val:fast += 1return slow

977.有序数组的平方

题目

在这里插入图片描述

思路与解法

第一想法: 1. 暴力法

class Solution:def sortedSquares(self, nums: List[int]) -> List[int]:for i in range(len(nums)):nums[i] = nums[i] * nums[i]nums.sort()return nums

carl: 双指针。想要速度快,自然要想到用空间换

# 双指针(提前定义定长列表)
class Solution:def sortedSquares(self, nums: List[int]) -> List[int]:res = [float('inf')] * len(nums)left = 0right = len(nums) -1 i = len(nums) -1while left <= right:if nums[left] * nums[left] > nums[right] * nums[right]:res[i] = nums[left] * nums[left]i -= 1 left += 1else :res[i] = nums[right] * nums[right]right -= 1i -= 1# res.reverse()return res
# 双指针 + 反转列表
class Solution:def sortedSquares(self, nums: List[int]) -> List[int]:res = []left = 0right = len(nums) -1 while left <= right:if nums[left] * nums[left] > nums[right] * nums[right]:res.append(nums[left] * nums[left])left += 1else :res.append(nums[right] * nums[right])right -= 1# res.reverse()return res[::-1]
http://www.dtcms.com/wzjs/218588.html

相关文章:

  • 企业营销网站建设价格济南网站seo
  • 修改wordpress用户密码佛山seo优化
  • 网站建立的公司网站推广营销的步骤
  • 做私活的网站怎么做品牌推广和宣传
  • 永乐网站建设深圳市网络seo推广平台
  • p2p网站建设cms南宁seo优势
  • 怎么仿网站链接展示型网页设计公司
  • 天水网站建设博客浏览器打开是2345网址导航
  • 支付网站建设费站长全网指数查询
  • 网站建设 建站知识武汉seo首页优化技巧
  • 做钢材生意选什么网站线上营销手段
  • wordpress去掉模板登录windows优化大师的功能
  • 做图片推广的网站长沙百度贴吧
  • 广东网站建设英铭科技淘宝店铺怎么免费推广
  • 微网站建设包括哪些安徽网络优化公司
  • wordpress整站模板百度代做seo排名
  • 做电子请帖网站有哪些营销策划方案范文1500
  • webapp开发seo顾问公司
  • 河北做it的网站百度搜索引擎优化案例
  • wordpress权限代码怎么优化一个网站关键词
  • 网站设计项目策划ppt郑州网站建设价格
  • php 用什么做网站服务器吗百度公司全称叫什么
  • 南京制作网页培训机构长春百度推广排名优化
  • 莆田自助建站软件个人如何在百度上做广告
  • 哪个公司做视频网站创意营销点子
  • 深圳营销型网站需要多少钱sem竞价
  • 高端网站开发找哪家好网络广告是什么
  • 创建自己的免费网站计算机编程培训学校哪家好
  • 某些网站网速慢精准客源推广引流
  • 沈阳建设银行网站首页企业邮箱格式