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

平台设计思路怎么写seo快速排名易下拉霸屏

平台设计思路怎么写,seo快速排名易下拉霸屏,semiconductor,企业网站备案那么麻烦吗1.前言 因为昨天写了一个基数排序#xff0c;今天我来写一道用基数排序实现的题解#xff0c;希望可以帮助你理解基数排序。 这个题本身不难#xff0c;就是线性时间和线性额外空间(O(n))的算法#xff0c;有点难实现 基数排序的时间复杂度是O(d*(nradix))#xff0c;其中…1.前言 因为昨天写了一个基数排序今天我来写一道用基数排序实现的题解希望可以帮助你理解基数排序。 这个题本身不难就是线性时间和线性额外空间(O(n))的算法有点难实现 基数排序的时间复杂度是O(d*(nradix))其中d是最大值的位数n是数组长度radix是基数10然后化简就是 O(n)  2.思路分析 首先找到待排序数组中的最大值确定最大值的位数。假设最大值是max位数是d。 创建10个桶0-9每个桶用来存放对应位数上的数字。 从低位个位开始根据当前位数的值将待排序数组中的数字放入对应的桶中。 将桶中的数字按照顺序取出覆盖原数组然后进入下一位数的排序。 重复步骤3和步骤4直到排完最高位即 d 位。 最后遍历排序后的数组计算相邻数字之间的差值找到最大的差值即为最大间距。 3.代码实现  这里我获取最大值最小值使用了stream流下面我来介绍一下 int maxVal Arrays.stream(arr).max().getAsInt();  获取最大值 //Arrays.stream(arr) 将数组转换为一个流。 //max() 方法找到流中的最大值返回一个 OptionalInt 对象。 //getAsInt() 方法从 OptionalInt 对象中获取最大值作为 int 类型的值。如果最大值不存在即数组为空则会抛出 NoSuchElementException 异常。 /* * 基数排序实现 求相邻元素的差值(最大间距) * * */import java.util.ArrayList; import java.util.Arrays; import java.util.List;public class sortHomework3 {public static int maximumGap(int[] nums) {radixSort(nums);int r 0;for (int i 1; i nums.length; i) {r Math.max(r,nums[i] - nums[i - 1]);}return r;}public static void radixSort(int[] arr) {if (arr null || arr.length 0){return;}int max Arrays.stream(arr).max().getAsInt();//获得最大值,确定最高位数int min Arrays.stream(arr).min().getAsInt();//获得最小值int digit 1; // 从最低位开始排序int base 10; // 基数为10即十进制(是个桶)// 转换负数为正数if (min 0) {max - min;for (int i 0; i arr.length; i) {arr[i] - min;}}while(max / digit 0){countingSort(arr, base, digit);digit * base;//处理更高位数}//排序完毕后// 将转换后的正数转换回负数if (min 0) {for (int i 0; i arr.length; i) {arr[i] min;}}}private static void countingSort(int[] arr, int base, int digit) {// 定义桶的大小 (里面的泛型表示动态数组)为10个桶ListListInteger buckets new ArrayList(10);for (int i 0; i 10; i) {buckets.add(new ArrayList()); // 创建空的桶(不创建空桶默认里面存的都是null不是桶)}for (int i : arr) {int index i / digit % base;//获得位数buckets.get(index).add(i);//添加到集合中}int k 0;//将元素在插入arr中for (int i 0; i buckets.size(); i) {if (buckets.get(i).isEmpty()){continue;}//把各个桶中的元素存储到数组中for (int j 0; j buckets.get(i).size(); j) {arr[k] buckets.get(i).get(j);}//取出来一个桶,咱就删除一个桶buckets.get(i).clear();}}public static void main(String[] args) {int[] arr {5, 2, 8000, 3, 1};int[] expected {1, 2, 3, 5, 8};System.out.println(Arrays.toString(arr));maximumGap(arr);System.out.println(Arrays.toString(arr));} }
http://www.hkea.cn/news/14273076/

相关文章:

  • 开发国外优惠卷网站如何做手机版网站开发
  • 网站开发 定制 合同 模板搜狐做app的网站
  • 网站开发转码手机开发公司资质查询
  • c2c电子商务网站建设进销存软件
  • 网站建社石家庄公司网站怎么选
  • 网站开发环境介绍模板网站优化
  • 冀州网站建设价格百度百家号注册
  • 做网站公司怎么样wordpress 相册浏览器
  • 企业网站flash网站建设运营工作业绩
  • 辽宁鞍山网站建设公司wordpress前端用户
  • 蓝彩网络科技_齐齐哈尔微信营销_齐齐哈尔网站建设网站建设需要自备什么
  • 网站备案对网站负责人的要求网站建设制
  • 国外的设计网站安装文件出现乱码
  • 网站建设 引导物流行业网站建设市场分析
  • 35互联做网站多少钱厦门购买域名以后搭建网站
  • 向自己做网站上海网页制作多少钱
  • 中国建设工程招标网站顺企网属于什么网站
  • 网站做游戏活动策划方案WordPress破解分享
  • 仿wordpress站免费门户网站搭建
  • 域名备案查询网站备案陕西建设网官方网站
  • 网站开发盈亏平衡分析表安徽股票配资网站建设
  • 做外贸网站基本流程网站建设的功能有哪些内容
  • 网站推广一般办法太原深圳建设工程信息网站
  • 手机百度网站证书过期浙江省建设教育考试中心网站
  • 网站建设合同需要缴纳印花税网站建设济南
  • 建立网站需要多少人网站春节放假
  • linux 网站开发wordpress汉化教程视频
  • 网站建设总体规划包括哪些黑色大气网站源码
  • 江西建设厅网站查询施工员九游手游平台app
  • 网站建设实验周志与总结制作网站单页