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

软件开发外包大概多少钱aso优化的主要内容

软件开发外包大概多少钱,aso优化的主要内容,沈阳市网站建设公司,网站建设可行性分析报告范文目录 1. 原理 2. 代码实现 3. 性能分析 1. 原理 首先看一个题目,有n个数,取值范围是 0~n,写出一个排序算法,要求时间复杂度和空间复杂度都是O(n)的。 为了达到这种效果,这一篇将会介绍一种不基于比较的排序方法。这…

目录

1. 原理

2. 代码实现

3. 性能分析


1. 原理

首先看一个题目,有n个数,取值范围是 0~n,写出一个排序算法,要求时间复杂度和空间复杂度都是O(n)的。

为了达到这种效果,这一篇将会介绍一种不基于比较的排序方法。这种方法被称为计数排序。

计数排序的思路是这样的,对于每一个待排序元素a,如果知道了待排序数组中有多少个比它小的数,那么就可以直接知道在排序后的数组中 a 应该在什么位置上。比如,如果一个数组中有3个数是比a小的,那么,在排序后的数组里,a必然会出现在第4位。

现在问题转化成,对于待排序数组里的一个数,如何能快速知道比它小的数字有多少个。要解决这个问题,我们不能使用比较的办法,那样时间复杂度是无法降下来,只有换一个思路,以空间换时间。因为n个数的取值范围是 0~n,所以,不妨使用一个大小为 n 的数组来统计从0到n,每个数在待排序数组中出现的次数。这个数组类似于直方图数组,因为这种方式也被称做是基于统计的排序。直方图统计的思路简单清晰,在很多题目中都会有出现,一定要熟练掌握这种技巧。

强调:计数排序适合排序一组集中的数据。

2. 代码实现

    //计数排序public static void countSort(int[] array) {//1. 找到待排序数组的范围,也就是找到最大值和最小值int max = array[0];int min = array[0];//循环遍历找寻最小值和最大值for (int i = 1; i < array.length; i++) {if (array[i] > max)max = array[i];if (array[i] < min)min = array[i];}//计算待排数组的长度int len = max - min + 1;//2. 定义一个计数数组int[] count = new int[len];//3. 遍历array数组,把数据计数到计数数组中for (int i = 0; i < array.length; i++) {count[array[i] - min]++;}//4. 将array数组还原int index = 0;//来控制array数组的下标for (int i = 0; i < array.length; i++) {//这个循环的作用,是把count里面标记的数据取出来while (count[i] > 0) {array[index] = i + min;index++;count[i]--;}}}public static void main(String[] args) {int[] a = {5,4,3,2,1};Sort.countSort(a);for (int x : a) {System.out.print(x + " ");}}

3. 性能分析

时间复杂度空间复杂度
O(MAN(N,范围))O(N)
对数据的范围敏感对数据的范围敏感

http://www.tj-hxxt.cn/news/117624.html

相关文章:

  • 娄底市城乡建设局网站百度竞价推广点击器
  • dedecms旅游网站模板可以直接进入的舆情网站
  • 淄博网站制作多样定制青岛网站建设推广公司
  • 东莞做营销型网站域名申请的流程
  • 公务员可以做网站吗优化推广网站seo
  • 长沙企业网站建设公司公司网站域名续费一年多少钱
  • 网站 百度地图房管局备案查询网站
  • 广州易网外贸网站建设关于进一步优化
  • 四川省成都市龙泉驿区疫情吉林关键词优化的方法
  • 做外贸网站 用国外空间 还是 国内空间 区别软文广告经典案例300
  • 政府网站建设管理典型材料seo推广收费标准
  • 咨询手机网站建设平台百度搜索排名机制
  • 企业内部管理系统网站建设毕业设计网站
  • 国外源码网站今天刚刚的最新新闻
  • 郑州做互联网推广的网络营销中的seo与sem
  • 佛山网站建设冯哥西安百度竞价托管公司
  • discuz 手机网站模板西安seo排名外包
  • 服务器可以做网站怎么自己开发网站
  • 4399小游戏电脑版页面黑帽seo技术
  • 相城高端网站建设关键词排名查询工具有什么作用?
  • 亚马逊海淘官网seo同行网站
  • 网站建设日期如何查询舆情网站直接打开怎么弄
  • 免费企业网站管理系统seo招聘要求
  • 佛山网站建设外包公司河北seo技术
  • 如何在微信平台做购买网站windows优化大师自动安装
  • 网站建设日程表模板百度指数排名
  • 多语言建站系统搜索引擎优化教材答案
  • 建设网站的市场背景建立网站的几个步骤
  • wordpress搭建相册关键词优化seo
  • 网站在淘宝上做靠谱吗天津百度推广中心