Python剑指offer:数组中数值和下标相等的元素
'''
假设一个单调递增的数组里的每个元素都是整数并且是唯一的。
请编程实现一个函数找出数组中任意一个数值等于其下标的元素。
例如,在数组{-3, -1, 1, 3, 5}中,数字3和它的下标相等。
'''class Solution:def GetNumberSameAsIndex(self, data, num):if num < 0 or len(data) <= 0:return "please input right data or number"start = 0end = len(data) - 1while start <= end:mid = (start + end) // 2if data[mid] == num:return mid# 一个元素的值一旦大于他的下标,那么该元素右边的值# 肯定都大于他的下标。因此从改元素左边找就可以了elif data[mid] > mid:end = mid - 1# 同理,一个元素的值如果小于他的下标,# 那么左侧的值也都不满足条件elif data[mid] < mid:start = mid + 1return Nonea = Solution()
a.GetNumberSameAsIndex([-3, -1, 1, 3, 5], 3)
Python剑指offer:数组中数值和下标相等的元素相关推荐
- python剑指offer数组中出现次数超过一半的数字
题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2. ...
- java中数组的下标比较_【Java】 剑指offer(53-3) 数组中数值和下标相等的元素
本文参考自<剑指offer>一书,代码采用Java语言. 题目 假设一个单调递增的数组里的每个元素都是整数并且是唯一的.请编程实现一个函数找出数组中任意一个数值等于其下标的元素.例如,在数 ...
- 《剑指offer》第五十三题(数组中数值和下标相等的元素)
// 面试题53(三):数组中数值和下标相等的元素 // 题目:假设一个单调递增的数组里的每个元素都是整数并且是唯一的.请编程实 // 现一个函数找出数组中任意一个数值等于其下标的元素.例如,在数组{ ...
- c++在数组中添加元素_39. 数组中数值和下标相等的元素
数组中数值和下标相等的元素 题目: 假设一个单调递增的数组里的每个元素都是整数并且是唯一的.请编程实现一个函数,找出数组中任意一个数值等于其下标的元素.例如,在数组{-3,-1,1,3,5}中,数字3 ...
- 8. 返回数组里出现次数最多的数字_剑指offer 数组中出现次数超过一半的数字
题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2. ...
- 剑指offer:数组中重复的数字
题目描述 在一个长度为n的数组里的所有数字都在0到n-1的范围内. 数组中某些数字是重复的,但不知道有几个数字是重复的.也不知道每个数字重复几次.请找出数组中任意一个重复的数字. 例如,如果输入长度为 ...
- [剑指offer] 数组中只出现一次的数字
本文首发于我的个人博客:尾尾部落 题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了偶数次.请写程序找出这两个只出现一次的数字. 解题思路 法一:大家都能想到的HashMap法 法二:异或法 ...
- 剑指offer 数组中的逆序对
题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数P.并将P对1000000007取模的结果输出. 即输出P%1000 ...
- 39.数组中数值和下标相等的元素
题目描述: 假设一个单调递增的数组里的每个元素都是整数且是唯一的,请编程实现一个函数,找出数组中任意一个数值等于其下标的元素,例如,在数组{-3,-1,1,3,5}中数字3和它的下标相同. 思路分 ...
最新文章
- 字符串匹配算法 -- AC自动机 基于Trie树的高效的敏感词过滤算法
- 2020 我的C++的学习之路 第十章 对象和类
- 大数据技术-hive窗口函数详解
- JavaScript中本地对象、内置对象和宿主对象
- 暴力 gcd __gcd (详解)C语言求两个数的最大公约数
- 多伦多大学计算机科学升大二,加拿大多伦多大学优势专业排名_加拿大多伦多大学优势专业盘点...
- QT每日一练day13:QFileDialog文件浏览框
- php key sort,PHP中的sort(), rsort(),asort(),arsort(),ksort(),krsort()函数
- gdb调试多进程和多线程
- mac开启docker kubernetes
- JsonHelper 操作帮助类
- Datalogic得利捷携最新技术与设备亮相2019两大工业展
- Flink中Table Api和SQL(二)
- 基于51单片机的无线病床呼叫系统装置 proteus仿真原理图程序设计
- Navicat Premium v12.0.23.0 破解教程x86,x64通用,手动破解
- Pandas二次学习- 回炉重造(进阶)
- 测试枕头软件,360度模拟人体睡眠测试,选对枕头让睡眠一步到位
- 数据自动备份软件哪个好?
- JVM学习 谁是垃圾?判断对象是否能被垃圾回收 可达性分析 四大引用
- 【专业认知】保研清华计算机直博生