the Duplicate Number  132 PatternFind

找重复的数字··直接暴力枚举是不行的···又超时提示··

暴力枚举的写法·

   res=0def findDuplicate(self, nums):# Write your code here
#或者这么写
#for i in range(len(nums)):
# if nums[i] in nums[i+1:]:return nums[i]

        def findmid(arr):if len(arr)<=1:returnglobal resmid=arr[0]low=[]high=[]for i in range(1,len(arr)):if arr[i]>mid:high.append(arr[i])elif(arr[i]<mid):low.append(arr[i])else:res=midreturnfindmid(low)findmid(high)findmid(nums)return res

python的闭包写法有点怪··这里用了一个全局变量来实现闭包,也可以在外边函数里边声明res 嵌套函数里边用nonlobal,但是lintcode的编译器好像不识别这个···或者直接用list···

这个写法会提示超时··而且也不满足题目要求··题目要求空间复杂度是O(1),这个新建数组了··

后来在网上查了下注意到题目里边说了·一定有n+1个数字··然后范围在1到n

    def findDuplicate(self, nums):# Write your code heremin=0max=len(nums)-1while(min<max):mid=(min+max)//2cnt=0for i in nums:if i<=mid:cnt+=1if cnt>mid:max=midelse:min=mid+1return min 

132 PatternFind

直接遍历是不行的·就算设置了条件优化也不行····会超时·· 这个用栈的方法 有点流弊···逆序遍历取第二大的值为基准做对比·,这里second的初始值取-1000000,

class Solution:# @param {int[]} nums a list of n integers# @return {boolean} true if there is a 132 pattern or falsedef find132pattern(self, nums):# Write your code heresecond = -1000000   st = []for num in nums[::-1]:if num<second:return Truewhile st and num>st[-1]:second=st.pop()st.append(num)return False

转载于:https://www.cnblogs.com/onegarden/p/7209503.html

lincode 题目记录6相关推荐

  1. JavaScript预解析、作用域题目记录

    JavaScript预解析.作用域题目记录 写出以下题目执行的结果及过程分析 function fun ( n ) {console.log( n );var n = 456;console.log( ...

  2. 自用PTA题目记录0024

    自用PTA题目记录0024 以下题目序号并无实际意义 文章目录 自用PTA题目记录0024 9-2 A+B的文本文件版 代码 总结 9-2 A+B的文本文件版 题目作者: 翁恺 单位: 浙江大学 内存 ...

  3. 【面试题目】2019年中心面试题目记录

    网络上能找到流传出来的中心面试题目记录 大数据是什么? 云计算的理解? 单位涉密应该怎么做? 对于一些名词的解释:拒绝服务攻击.网络冒仿.网络蠕虫.网页恶意代码.木马主机.网络篡改 什么是物联网? 你 ...

  4. 自用PTA题目记录0001

    自用PTA题目记录0001 以下题目序号并无实际意义 文章目录 自用PTA题目记录0001 7-1 检查密码 代码 总结 7-1 检查密码 题目作者: 陈越 单位: 浙江大学 代码长度限制: 16 K ...

  5. 自用PTA题目记录0025

    自用PTA题目记录0025 以下题目序号并无实际意义 文章目录 自用PTA题目记录0025 10-1 查询图书表中全部图书的最高售价.最低售价和平均售价 代码 总结 10-1 查询图书表中全部图书的最 ...

  6. 自用PTA题目记录0023

    自用PTA题目记录0023 以下题目序号并无实际意义 文章目录 自用PTA题目记录0023 9-1 JAVA文件读写A+B题 代码 总结 9-1 JAVA文件读写A+B题 题目作者: zouxuxia ...

  7. LeetCode数据库SQL题目记录(难度:简单)

    难度:简单 目录 175. 组合两个表 176. 第二高的薪水 181. 超过经理收入的员工 182. 查找重复的电子邮箱 183. 从不订购的客户 196. 删除重复的电子邮箱 197. 上升的温度 ...

  8. 【题目记录】——The 2021 ICPC Asia Jinan Regional Contest

    文章目录 C Optimal Strategy 组合数 H Game Coin K Search For Mafuyu 欧拉序列 题目集地址 The 2021 ICPC Asia Jinan Regi ...

  9. CTF题目记录2(图片隐写)

    网上找了一个图片隐写的练习,故记录一下 题目1 png图片–LSB隐写 习惯性要先查看属性–没收获 然后stegsolve 我当然是用data extract查看了各个通道的最后两位情况,并保存了几个 ...

最新文章

  1. android o 全机型推送,氢OS(Android O)官方更新推送 一加两款机型完成适配
  2. 不喜欢SAP GUI?那试试用Eclipse进行ABAP开发吧
  3. 清空python的变量
  4. 故障处理 软件 需求_如何根据GJB 102A开展软件安全性分析 —— 下篇
  5. linux sshpass 非交互的ssh密码验证 简介
  6. python列表、集合、字典、元祖用途_Python-函数作用域和集合列表字典元祖
  7. 2017-2018-1 20155332实验三 实时系统报告
  8. Git 修改分支的名称(亲测)
  9. Storm 04_Storm单机模式搭建完全分布式安装部署集群drpc
  10. 天牛须matlab,基于天牛须搜索算法(BAS)优化BP神经网络的权值阈值代码
  11. 关于 Blazor Server Side 的一些杂项, 感想
  12. JVM 内存示意图(内存结构图/内存解析图)
  13. 剥开比原看代码07:比原节点收到“请求区块数据”的信息后如何应答?
  14. 为什么阿里全面推动 K8S 落地,咬紧牙关也要搞云原生?
  15. 计算机操作员高级工试题一,计算机操作员高级工操作题复习资料
  16. 第十章 DirectX 绘制简单场景,地形,天空盒和跟随摄像机(上)
  17. ❤️爆肝十二万字《python从零到精通教程》,从零教你变大佬❤️(建议收藏)
  18. 前端的长度单位有哪些
  19. python包NetworkX学习——最短路径dijkstra_path和dijkstra_path_length
  20. pandorabox php7,飞鱼星G7免拆刷入pandorabox

热门文章

  1. Linux按键驱动,中断实现流程
  2. Team Foundation Server 源代码控制权限问题
  3. 香港理工大学人工智能设计实验室 博士后 招聘
  4. 一张图带你了解python
  5. 【TensorFlow】TensorFlow从浅入深系列之一 -- 教你如何设置学习率(指数衰减法)
  6. Hi3798M V200 SDK文档介绍
  7. windows下使用word2vec训练维基百科中文语料全攻略!(二)
  8. 更新版 | GPU CUDA 进阶课程
  9. 词嵌入和网络在NLP中贡献
  10. 结合图拉普拉斯的半监督学习