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

毕业设计做课程网站好中铁建设集团有限公司登录

毕业设计做课程网站好,中铁建设集团有限公司登录,西安网站托管排名,网站开发与应用 答案无序数组排序后的最大相邻差 问题#xff1a;一个无序的整型数组#xff0c;求出该数组排序后的任意两个相邻元素的最大差值#xff1f;要求时间和空间复杂度尽可能低。 三种方法#xff1a; 排序后计算比较 简介#xff1a;用任意一种时间复杂度为 O ( n log ⁡ n ) O…无序数组排序后的最大相邻差 问题一个无序的整型数组求出该数组排序后的任意两个相邻元素的最大差值要求时间和空间复杂度尽可能低。 三种方法 排序后计算比较 简介用任意一种时间复杂度为 O ( n log ⁡ n ) O(n \log n) O(nlogn) 的排序算法给原数组排好序。然后遍历排序好的数组并对每两个相邻元素求差最终得到最大差值。思考时间复杂度为 O ( n log ⁡ n ) O(n \log n) O(nlogn)在不改变原数组的情况下空间复杂度为 O ( n ) O(n) O(n)存储排序好的数组。但这道题显然不是用来排序的。 利用计数排序的思想 简介求出原数组的最大最小值max和min区间长度kmax - min 1偏移量 min。创建一个长度为k的数组。遍历原数组若原数组值为n则array[n-min]的值加1。遍历新数组统计最大连续出现0值的次数1就是相邻元素的最大差值。思考若原数组是 1 1000000310000006 这三个元素呢没办法了想到了桶排序好像可以解决这个问题 利用桶排序的思想 简介根据原数组长度n创建n个桶每个桶代表一个区间范围区间跨度是(max - min) / (n-1)。遍历原数组对应元素放到桶中记录每个桶的最大最小值。遍历桶统计每个桶的最大值和右侧非空桶的最小值的差数值最大的差即为最大相邻差。 代码 public class MaxSortedDistance {public static int getMaxSortedDistance(int[] array){//1.得到原数组的最大值和最小值 和 区间跨度int max array[0];int min array[0];for(int i1; iarray.length; i) {if(array[i] max) {max array[i];}if(array[i] min) {min array[i];}}int d max - min;//如果max和min相等说明数组所有元素都相等返回0if(d 0){return 0;}//2.初始化桶桶的数量和元素的数量一样多int bucketNum array.length;Bucket[] buckets new Bucket[bucketNum];for(int i 0; i bucketNum; i){buckets[i] new Bucket();}//3.遍历原始数组确定每个桶的最大最小值for(int i 0; i array.length; i){//确定数组元素所归属的桶下标int index ((array[i] - min) * (bucketNum-1) / d);// 存到合适的最大最小值的位置if(buckets[index].minnull || buckets[index].minarray[i]){buckets[index].min array[i];}if(buckets[index].maxnull || buckets[index].maxarray[i]){buckets[index].max array[i];}}//4.遍历桶找到最大差值int leftMax buckets[0].max; // 存储第一个桶的最大值int maxDistance 0;for (int i1; ibuckets.length; i) {// 如果右侧的桶没有最小值就直接遍历下一个桶if (buckets[i].min null) { continue;}// 记录好最大差if (buckets[i].min - leftMax maxDistance) {maxDistance buckets[i].min - leftMax;}leftMax buckets[i].max;}// 返回最大相邻差return maxDistance;}/*** 桶只存储最大值和最小值*/private static class Bucket {Integer min;Integer max;}public static void main(String[] args) {int[] array new int[] {7,2,2,9,1,22,6};System.out.println(getMaxSortedDistance(array));} } 时间复杂度和空间复杂度都是 O ( n ) O(n) O(n)
http://www.hkea.cn/news/14308370/

相关文章:

  • 网站刷排名工具wordpress多站点使用期限插件
  • 2017年做那家网站好做网站用什么ui美观
  • 北京网站设计合理刻找人代做网站注意事项
  • 怎样让网站排名优化工没网站怎么做cpa
  • 阳江招聘网站普洱高端网站建设价格
  • 金华专业的网站建设应用公园app在线平台
  • 站酷网站的图是用什么做的WordPress 去掉副标题
  • 做静态网站程序员做网站赚钱
  • 双语网站怎么做的重庆是哪个省属于哪个省
  • 湖南教育平台网站建设深圳互联网公司排行榜100
  • 一叶子电子商务网站建设策划书制作一个网站的成本
  • 辽宁网站建设价格网站备案接入服务单位
  • 嘉纪商正网站建设公司公司网站建设接单
  • 黑龙江生产建设兵团知识网站工商网站查询企业信息武威
  • 艺术公司网站定制7天精通网站建设实录简介242
  • 网站栏目页面公司做一个网站如何定位
  • 商城网站建设公司哪家好wordpress调整配置文件
  • 网站建设要固定ip网络吗4435建站
  • 如何查看网站抓取频率洪山网站建设
  • 松江区做网站外贸wordpress模板下载
  • 超简洁网站wordpress添加vip角色
  • 建设网站需要什么手续网上订货发货网站建设
  • 合作网站账号登录方式房地产开发公司取名
  • 建设项目环境影响登记网站天津网站建设课程中的收获
  • 做爰片的网站关于解决网站 建设的请示
  • 专门做金融的招聘网站国外炫酷网站
  • 临沭县住房和城乡建设局网站安卓编程软件app
  • 中国空间站完成图集团网站建设要多少钱
  • 做个人网站怎么做手机平面设计软件
  • 厦门本地企业网站建设免费的网站入口在哪