先求差值最大的:

1、找出最大值和最小值 然后做差,  每次比较相邻的两个数(比如先0,1  然后2,3),然后每次比较记录下最大和最小的差值,可以比较1.5N次得到结果,和分为奇数偶数位比较一样的复杂度

2、由于抽屉原来,设最大的值和最小的值为maxV和minV,那么最大差值不会超过delta = (maxV-minV)/(N-1),  用反证法可以证明,编程之美p171,然后根据delta的值分为N个桶,最大差值显然不会再桶内,所以找到桶内最大的值和最小的值,即可。o(n)

如果是点对,那么 参考 凸包,卡壳算法。。。我还不会。。。http://blog.csdn.net/wangyangkobe/article/details/6081975

然后是差值最小的“

1、排序然后扫描相邻的,o(nlogn)

2、把所以值用visit数组标记,visit[a[i]] = 1,然后找到最相邻的两个1即可,bit貌似可以优化

点对:不能排序是个问题了。。。考虑编程之美p170算法,分治,分为左右两个部分,两边找出最小的,设最小的为mdin,然后再判断两个点一个在做一个在右的情况,只考虑分布<2*midn的情况,然后两个矩形。。。8个点(我怎么感觉是6个呢),然后再按照y排序找,每次找相邻8个点即可,这一步就是o(n)了,然后总的o(nlogn)

转载于:https://www.cnblogs.com/juandx/p/4065470.html

在一个数组中找 差值最大的两个数 差值最小的两个数 推广到 点对相关推荐

  1. 在一个数组中找出和为目标值的那 两个 整数,并返回他们的数组下标python代码(Leetcode1)

    最近跟着国外的导师做语音情感识别,开始踏上了学习python之路,之前一直不愿意接触python,感觉c++更牛一点,C++会了之后python很简单的就学会了,上手后两种感觉:1 真香  2不像想象 ...

  2. c语言 有15个数按由大到小,C++ 有15个数按由大到小顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值。如果该数不在数组中,则输出“无此数”。...

    有15个数按由大到小顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个元素的值.如果该数不在数组中,则输出"无此数". 以下是此题的[c++源代码],需要[c ...

  3. 在一个数组中删除另一个数组存在的值

    在一个数组中删除另一个数组存在的值 可以在购物车中删除多个商品的时候用此方法 在Vuex实现完整购物车中有涉及,详见 Vuex实现完整购物车 <script type="text/ja ...

  4. python求近似值_python 已知一个字符,在一个list中找出近似值或相似值实现模糊匹配...

    已知一个元素,在一个list中找出相似的元素 使用场景: 已知一个其它来源的字符串, 它有可能是不完全与我数据库中相应的字符串匹配的,因此,我需要将其转为适合我数据库中的字符串 使用场景太绕了, 直接 ...

  5. C语言:有N个数从小到大的顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个数。如果不在数组中,打印“not found”。

    /*有N个数从小到大的顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个数.如果不在数组中,打印"not found".*/#include<stdio ...

  6. 给出一个分治算法,在一个具有n个数的数组中找出第二个最大元素。给出你算法的时间复杂性

    给出一个分治算法,在一个具有n个数的数组中找出第二个最大元素.给出你算法的时间复杂性. 算法 SECOND_MAX 输入:含有n个元素的数组A,不妨设 n=2^k 输出:该数组中的第二个最大元素 ( ...

  7. python 已知一个字符,在一个list中找出近似值或相似值, 模糊匹配

    已知一个元素,在一个list中找出相似的元素 使用场景: 已知一个其它来源的字符串, 它有可能是不完全与我数据库中相应的字符串匹配的,因此,我需要将其转为适合我数据库中的字符串 使用场景太绕了, 直接 ...

  8. 有15个数按从小到大的顺序存放在一个数组中。(折半查找)

    有15个数按从小到大的顺序存放在一个数组中.输入一个数,要求用折半查找法找出该数是数组中第几个元素的值.如果该数不在数组中,输出"不在表中". 折半查找法的原理是:对于一个升序数组 ...

  9. JS实现 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。

    题目:(JS实现) 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 四种方法如下: 方法一:暴力破解法,和值匹配 //暴力 ...

最新文章

  1. java多线程绘图_菜鸟学Java之 Java2D 多线程绘图
  2. IT领域中混合云管理工具扮演什么角色?
  3. SPS中计算值公式函数简介
  4. ERROR 1130: Host ’...′ is not allowed to connect to this MySQL server
  5. Perl 字符串截取函数substr
  6. 使用fileupload实现文件上传
  7. APP开发内容介绍(源代码)
  8. STM32实现水下四旋翼(三)通信任务——遥控器SBUS通信
  9. linux 添加raid0驱动,网众linux添加新raid驱动.doc
  10. iometer测试方法linux,IOmeter测试指导手册.pdf
  11. 量化投资学习-16:从波粒二象性和叠加原理看股票的三面:市场面、基本面、技术面
  12. 关于调制解调器、路由器、交换机
  13. HTML 按钮交互,20 个交互非常棒的按钮代码_html/css_WEB-ITnose
  14. 手把手教你从零开始腾讯云服务器部署
  15. 饿了么table排序
  16. 操作系统学习笔记(二十八)~文件系统+连续分配+链接分配+索引分配+空闲空间管理
  17. tile cannot extend outside image
  18. 金融农民工转行Java开发,3年时间月薪翻5倍
  19. 计算机软件技术专业毕业论文,软件技术专业毕业论文.doc
  20. uboot-uboot升级调试uboot篇

热门文章

  1. PEP8 Python 编码规范整理
  2. Android中程序向桌面和Launcher添加快捷方式
  3. ACM模板--邻接矩阵 无向图 Prim Kruskal Dijkstra
  4. 常用神经网络模型及其应用评述
  5. 重构-改善既有代码的设计:编写代码22宗罪(三)
  6. golang中的panic
  7. SO_SNDTIMEO和SO_RCVTIMEO
  8. 计算机网络:大小端存储
  9. 常考数据结构和算法:链表中环的入口节点
  10. PDMan-2.1.3 发布:用心开源,免费的国产数据库建模工具