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

网站建设学校培训短视频运营是做什么的

网站建设学校培训,短视频运营是做什么的,微信公众号api,网站的ftp怎么查Python世界:力扣题704二分查找 任务背景思路分析代码实现测试套件本文小结 任务背景 问题来自力扣题目704:Binary Search,大意如下: Given an array of integers nums which is sorted in ascending order, and an integer target…

Python世界:力扣题704二分查找

    • 任务背景
    • 思路分析
    • 代码实现
    • 测试套件
    • 本文小结

任务背景


问题来自力扣题目704:Binary Search,大意如下:

Given an array of integers nums which is sorted in ascending order, and an integer target, write a function to search target in nums. If target exists, then return its index. Otherwise, return -1.

You must write an algorithm with O(log n) runtime complexity.

翻译下,需求是:对有序数组进行查找指定数字,若有返回索引,若无返回-1.

思路分析


重温下二分写法,思路很简单,发现值大的下移上界,发现值小的上移下界,直到上下界重合。

要注意的是无target时,mid的偏移问题。

代码实现


class Solution(object):def search(self, nums, target):""":type nums: List[int]:type target: int:rtype: int"""# range: [low, high)low = 0high = len(nums)while (low < high):mid = low + (high - low) // 2if nums[mid] < target:low = mid + 1elif nums[mid] > target:high = midelse:return mid# not foundreturn -1# test
nums = [-1, 0, 3, 5, 9, 12]
target = 9# nums = [-1,0,3,5,9,12]
# target = 2sol = Solution()
res = sol.search(nums, target)
print(res)

测试套件


# 导入单元测试
import unittest# 编写测试套
class TestSol(unittest.TestCase):# 不在数组中def test_special1(self):nums = [-1, 0, 3, 5, 9, 12]target = 2ret = -1sol = Solution()self.assertEqual(sol.search(nums, target), ret)# 下边界def test_special2(self):nums = [-1, 0, 3, 5, 9, 12]target = -1ret = 0sol = Solution()self.assertEqual(sol.search(nums, target), ret)# 上边界def test_special3(self):nums = [-1, 0, 3, 5, 9, 12]target = 12ret = 5sol = Solution()self.assertEqual(sol.search(nums, target), ret)def test_common1(self):nums = [-1, 0, 3, 5, 9, 12]target = 5ret = 3sol = Solution()self.assertEqual(sol.search(nums, target), ret)def test_common2(self):nums = [-1, 0, 3, 5, 9, 12]target = 9ret = 4sol = Solution()self.assertEqual(sol.search(nums, target), ret)# 含测试套版本主调
if __name__ == '__main__':print('start!')unittest.main() # 启动单元测试print('done!')

本文小结


二分核心:索引偏移存乎一心。

可进一步思考若有重复值时,如何找到最小重复索引或最大重复索引。

http://www.yidumall.com/news/11219.html

相关文章:

  • 手机如何做网站seo网站排名优化公司
  • 雅安市住房和城乡建设局网站如何在百度上开店铺
  • 做电子书网站 赚钱关键词排名优化顾问
  • 我想自己创建购物网站网络营销公司热线电话
  • 石景山区建设委员会网站全国免费信息发布平台
  • 怎么 从头开始建设一个网站手机优化大师为什么扣钱
  • p2p网站建设多少钱建设企业营销型网站
  • 网站保姆-源码下载广告推广方式
  • 合肥学习做网站重庆的seo服务公司
  • 怎么打帮人 做网站开发的广告吉林网站推广公司
  • 班级网站设计wordpress世界杯积分榜排名
  • 邯郸哪里做网站优化网站查询ip地址
  • 用PYTHON3 做网站成都营销型网站制作
  • 做百度网站排名软件厦门seo关键词优化代运营
  • 暴走漫画网站建设目的百度网盘搜索引擎入口官网
  • 免费三折页宣传册模板下载网seo平台是什么
  • 网站主机免费申请2020最近的新闻大事10条
  • 成都网站建设116web最经典的营销案例
  • 免费前端模板网站医院网站建设方案
  • 棠下手机网站建设报价百度问一问官网
  • 有哪些网站是做网批女装营销策略有哪些
  • 成都游戏网站建设seo技术教程博客
  • 如何在外管局网站做延期收汇拓客公司联系方式
  • 老外做摄影网站花多少钱网站排名软件利搜
  • 腾云网seo人员的相关薪资
  • 云南云南住房和城乡建设厅网站商品关键词优化的方法
  • Python爬取wordpress博客优化精灵
  • 武汉网站改版维护搜索引擎有哪些类型
  • 深圳建立网站营销seo建站要求
  • wordpress插表格seo的培训网站哪里好