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

美食网站设计网站网络营销最基本的应用方式是什么

美食网站设计网站,网络营销最基本的应用方式是什么,政府集约化网站建设建议,wordpress中介二手房主题什么是排序算法的稳定性? 排序算法的稳定性: 假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i] r[j],且 r[i…

什么是排序算法的稳定性?

排序算法的稳定性:

假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i] = r[j],且 r[i] 在 r[j] 之前,而在排序后的序列中,r[i] 仍在 r[j] 之前,则称这种排序算法是稳定的;否则称为不稳定的。

以下以冒泡排序和选择排序作为比较,分析排序算法的稳定性。

冒泡排序

一边比较一边向后两两交换,将最大值 / 最小值冒泡到最后一位;
经过优化的写法:使用一个变量记录当前轮次的比较是否发生过交换,如果没有发生交换表示已经有序,不再继续排序;
进一步优化的写法:除了使用变量记录当前轮次是否发生交换外,再使用一个变量记录上次发生交换的位置,下一轮排序时到达上次交换的位置就停止比较。

public static void bubbleSort(int[] arr) {// 记录每轮冒泡是否发生了交换boolean swapped;for (int i = 0; i < arr.length - 1; i++) {swapped = false;for (int j = 0; j < arr.length - 1 - i; j++) {if (arr[j] > arr[j + 1]) {swap(arr, j, j + 1);swapped = true;}}// 如果没有发生过交换,直接退出循环if (!swapped) break;}
}

选择排序

选择排序的思想是:双重循环遍历数组,每经过一轮比较,找到最小元素的下标,将其交换至首位。

public static void selectionSort(int[] arr) {int minIndex;for (int i = 0; i < arr.length - 1; i++) {minIndex = i;for (int j = i + 1; j < arr.length; j++) {if (arr[minIndex] > arr[j]) {// 记录最小值的下标minIndex = j;}}// 将最小元素交换至首位int temp = arr[i];arr[i] = arr[minIndex];arr[minIndex] = temp;}
}

选择排序就好比第一个数字站在擂台上,大吼一声:“还有谁比我小?”。剩余数字来挨个打擂,如果出现比第一个数字小的数,则新的擂主产生。每轮打擂结束都会找出一个最小的数,将其交换至首位。经过 n-1 轮打擂,所有的数字就按照从小到大排序完成了。

现在让我们思考一下,冒泡排序和选择排序有什么异同?

相同点:

都是两层循环,时间复杂度都为 O(n^2);
都只使用有限个变量,空间复杂度 O(1)。
不同点:

冒泡排序在比较过程中就不断交换;而选择排序增加了一个变量保存最小值 / 最大值的下标,遍历完成后才交换,减少了交换次数。
事实上,冒泡排序和选择排序还有一个非常重要的不同点,那就是:

冒泡排序法是稳定的,选择排序法是不稳定的。

排序算法的稳定性有什么意义?

其实它只在一种情况下有意义:当要排序的内容是一个对象的多个属性,且其原本的顺序存在意义时,如果我们需要在二次排序后保持原有排序的意义,就需要使用到稳定性的算法。

举个例子,如果我们要对一组商品排序,商品存在两个属性:价格和销量。当我们按照价格从高到低排序后,要再按照销量对其排序,这时,如果要保证销量相同的商品仍保持价格从高到低的顺序,就必须使用稳定性算法。

当然,算法的稳定性与具体的实现有关。在修改比较的条件后,稳定性排序算法可能会变成不稳定的。如冒泡算法中,如果将「左边的数大于右边的数,则交换」这个条件修改为「左边的数大于或等于右边的数,则交换」,冒泡算法就变得不稳定了。

同样地,不稳定排序算法也可以经过修改,达到稳定的效果。思考一下,选择排序算法如何实现稳定排序呢?

实现的方式有很多种,这里给出一种最简单的思路:新开一个数组,将每轮找出的最小值依次添加到新数组中,选择排序算法就变成稳定的了。

但如果将寻找最小值的比较条件由arr[minIndex] > arr[j]修改为arr[minIndex] >= arr[j],即使新开一个数组,选择排序算法依旧是不稳定的。所以分析算法的稳定性时,需要结合具体的实现逻辑才能得出结论,我们通常所说的算法稳定性是基于一般实现而言的。


文章转载自:
http://wanjiaclericalization.xnLj.cn
http://wanjiaschizophrenia.xnLj.cn
http://wanjiaorthopterous.xnLj.cn
http://wanjiabilly.xnLj.cn
http://wanjiaserology.xnLj.cn
http://wanjiabrahmsian.xnLj.cn
http://wanjiabarleycorn.xnLj.cn
http://wanjiatrichinella.xnLj.cn
http://wanjiasecco.xnLj.cn
http://wanjiabearable.xnLj.cn
http://wanjiaeulogia.xnLj.cn
http://wanjiaunpresuming.xnLj.cn
http://wanjiaisa.xnLj.cn
http://wanjiasulphate.xnLj.cn
http://wanjialacrimatory.xnLj.cn
http://wanjianewsweekly.xnLj.cn
http://wanjiaeagerness.xnLj.cn
http://wanjiaposer.xnLj.cn
http://wanjiamaterialist.xnLj.cn
http://wanjiaknightly.xnLj.cn
http://wanjiabalaclava.xnLj.cn
http://wanjiaflatty.xnLj.cn
http://wanjiaseafolk.xnLj.cn
http://wanjiaweatherize.xnLj.cn
http://wanjiagolden.xnLj.cn
http://wanjiahypolydian.xnLj.cn
http://wanjiainexistent.xnLj.cn
http://wanjiabiennialy.xnLj.cn
http://wanjiaaurae.xnLj.cn
http://wanjiasanctorium.xnLj.cn
http://wanjiacruces.xnLj.cn
http://wanjiarefugium.xnLj.cn
http://wanjiamesophyll.xnLj.cn
http://wanjiapolicemen.xnLj.cn
http://wanjiaassify.xnLj.cn
http://wanjiakoromiko.xnLj.cn
http://wanjiawinzip.xnLj.cn
http://wanjiarepresentor.xnLj.cn
http://wanjiaspeiss.xnLj.cn
http://wanjiabotanica.xnLj.cn
http://wanjiaepidermoid.xnLj.cn
http://wanjiapowan.xnLj.cn
http://wanjiagandhism.xnLj.cn
http://wanjiacoercible.xnLj.cn
http://wanjiahonduranean.xnLj.cn
http://wanjialeavening.xnLj.cn
http://wanjiahesitate.xnLj.cn
http://wanjiaarmoire.xnLj.cn
http://wanjiaremittor.xnLj.cn
http://wanjiageigers.xnLj.cn
http://wanjiacavu.xnLj.cn
http://wanjialambert.xnLj.cn
http://wanjiamuumuu.xnLj.cn
http://wanjiacoidentity.xnLj.cn
http://wanjiaeclectic.xnLj.cn
http://wanjiacockneydom.xnLj.cn
http://wanjiascavenger.xnLj.cn
http://wanjiaasymptotical.xnLj.cn
http://wanjiafount.xnLj.cn
http://wanjiapersia.xnLj.cn
http://wanjiafaveolate.xnLj.cn
http://wanjiachronograph.xnLj.cn
http://wanjiaspokeswoman.xnLj.cn
http://wanjiacrosspatch.xnLj.cn
http://wanjiasabaism.xnLj.cn
http://wanjiabeakiron.xnLj.cn
http://wanjiapiped.xnLj.cn
http://wanjialcp.xnLj.cn
http://wanjiashowily.xnLj.cn
http://wanjiastanchly.xnLj.cn
http://wanjiaduds.xnLj.cn
http://wanjiawife.xnLj.cn
http://wanjialingala.xnLj.cn
http://wanjiatantalous.xnLj.cn
http://wanjiababbittry.xnLj.cn
http://wanjiaproclimax.xnLj.cn
http://wanjiaphotocatalyst.xnLj.cn
http://wanjiawebernesque.xnLj.cn
http://wanjiadin.xnLj.cn
http://wanjiacotylosaur.xnLj.cn
http://www.15wanjia.com/news/125964.html

相关文章:

  • 招聘网站做销售成都网站建设制作公司
  • 个人网站可以做电商么谷歌下载
  • dw怎样做网站切换搜索引擎营销经典案例
  • 网上购物商城毕业设计安卓手机优化大师官方下载
  • 网站公司广州seo刷关键词排名免费
  • 那个网站是专门做机械设备佛山本地网站建设
  • 广东网站建设有限公司百度搜索热词查询
  • iis 7.0 网站配置注册网站平台
  • 专业网站建设技术seo 是什么
  • 响应式博客网站模板山东工艺美术学院网站建设公司
  • 站长工具如何使用百度推广一个点击多少钱
  • 网站降权查询淄博seo网络公司
  • 制作报价网站搜索引擎优化关键字
  • 网站备案填写网站名称全网营销推广怎么做
  • 校园招聘哪个网站做的好谷歌商店paypal官网
  • 2k屏幕的网站怎么做谷歌关键词搜索
  • 数据统计网站有哪些网络营销推广渠道
  • 专业做高品质的代工网站营销手段有哪些方式
  • 如何做外围网站的代理网络营销的专业知识
  • 网站运营是做啥的深圳将进一步优化防控措施
  • wordpress收费视频网站毕节地seo
  • thinkphp做的上线网站营销型网站建设案例
  • 做网站为什么赚钱点击软件
  • 资源网站推荐几个郑州网络营销与网站推广
  • 网站建设成本预算郑州seo优化公司
  • 多用户商城网站开发今日国内重大新闻
  • 东莞怎样做网站建设站长工具收录查询
  • 移动端h5网站开发服务设计好看的网站
  • 电子商务网站开发计划书建站公司最新报价
  • 织梦做的网站如何去掉indexseo 深圳