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

做网站还需要兼容ie6吗wordpress视频 小程序

做网站还需要兼容ie6吗,wordpress视频 小程序,食品核酸第三方检测机构,wordpress分类页seo目录 1 -> 排序的概念及其运用 1.1 -> 排序的概念 1.2 -> 常见的排序算法 2 -> 插入排序 2.1 -> 基本思想 2.2 -> 直接插入排序 2.2.1 -> 代码实现 2.3 -> 希尔排序(缩小增量排序) 2.3.1 -> 代码实现 1 -> 排序的概念及其运用 1.1 -&g…

目录

1 -> 排序的概念及其运用

1.1 -> 排序的概念

1.2 -> 常见的排序算法

2 -> 插入排序

2.1 -> 基本思想

2.2 -> 直接插入排序

2.2.1 -> 代码实现

2.3 -> 希尔排序(缩小增量排序)

2.3.1 -> 代码实现


1 -> 排序的概念及其运用

1.1 -> 排序的概念

排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。

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

内部排序:数据元素全部放在内存中的排序。

外部排序:数据元素太多不能同时放在内存中,根据排序过程的要求不能在内外存之间移动数据的排序。

1.2 -> 常见的排序算法

2 -> 插入排序

2.1 -> 基本思想

直接插入排序是一种简单的插入排序法,其基本思想是:把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列。

实际中我们玩扑克牌时,就用到了插入排序的思想。

2.2 -> 直接插入排序

当插入第i(i >= 1)个元素时,前面的arr[0],arr[1],arr[2]……,arr[i - 1]已经排好序,此时用arr[i]的排序码与arr[i - 1],arr[i - 2]……的排序码顺序进行比较,找到插入位置即将arr[i]插入,原来位置上的元素顺序后移。

直接插入排序的特性总结:

  1. 元素集合越接近有序,直接插入排序算法的时间效率越高;
  2. 时间复杂度:O(N^{2})
  3. 空间复杂度:O(1),他是一种稳定的排序算法;
  4. 稳定性:稳定;

2.2.1 -> 代码实现

#define  _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>// 打印
void PrintArray(int* a, int n)
{for (int i = 0; i < n; i++)printf("%d ", a[i]);printf("\n");
}// 插入排序
void InsertSort(int* a, int n)
{for (int i = 0; i < n - 1; ++i){int end = i;int tmp = a[i + 1];while (end >= 0){if (a[end] > tmp){a[end + 1] = a[end];--end;}else{break;}a[end + 1] = tmp;}}
}void TestInsertSort()
{int a[] = { 9, 2, 6, 1, 7, 3 ,0, 5, 8, 4 };PrintArray(a, sizeof(a) / sizeof(int));InsertSort(a, sizeof(a) / sizeof(int));PrintArray(a, sizeof(a) / sizeof(int));
}int main()
{TestInsertSort();return 0;
}

2.3 -> 希尔排序(缩小增量排序)

希尔排序法又称缩小增量法。希尔排序的基本思想就是:先选定一个整数,把待排序文件中所有记录分成各子序列,并对每一组内的记录进行排序,重复上述分组和排序的工作。当gap = 1时,完成排序。

希尔排序的特性总结:

  1. 希尔排序是对直接插入排序的优化。
  2. 当gap > 1时都是预排序,目的是让数组更接近于有序。当gap == 1时,数组已经接近有序了,这样就会很快。整体而言,可以达到优化的效果。
  3. 希尔排序的时间复杂度不好计算,因为gap的取值方法很多,导致很难去计算。
  4. 稳定性:不稳定。

2.3.1 -> 代码实现

#define  _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>// 插入排序
void InsertSort(int* a, int n)
{for (int i = 0; i < n - 1; ++i){int end = i;int tmp = a[i + 1];while (end >= 0){if (a[end] > tmp){a[end + 1] = a[end];--end;}else{break;}a[end + 1] = tmp;}}
}// 希尔排序
void ShellSort(int* a, int n)
{int gap = n;for (int i = 0; i < n - gap; i++){int end = i;int tmp = a[end + gap];while (end >= 0){if (a[end] > tmp){a[end + gap] = a[end];end -= gap;}else{break;}}a[end + gap] = tmp;}
}void TestShellSort()
{int a[] = { 9, 2, 6, 1, 7, 3 ,0, 5, 8, 4 };PrintArray(a, sizeof(a) / sizeof(int));InsertSort(a, sizeof(a) / sizeof(int));PrintArray(a, sizeof(a) / sizeof(int));ShellSort(a, sizeof(a) / sizeof(int));PrintArray(a, sizeof(a) / sizeof(int));
}int main()
{TestShellSort();return 0;
}


感谢大佬们的支持!!!

互三啦!!!

http://www.yayakq.cn/news/71699/

相关文章:

  • 网站开发的常用软件给你一个网站seo如何做
  • 广东营销网站建设服务公司软件开发工具的公司有哪些
  • 做同城网站需要哪些手续平面设计培训班多少钱
  • 企业网站建设公司上海冬季黄山旅游攻略
  • 室内设计网站图片网站建设时 网站信息可以边建设边组织
  • 临沂建设大型网站建设建设网站怎么判断是电脑还是手机号码
  • 单页网站产品dw网页制作的详细步骤
  • 广州网站建设有限公司网站设计专业实验室建设
  • 荣耀手机商城官方网站登录入口开一个建筑模板厂需要多少钱
  • 企业网站建设费用摊销怎么寻找要建设网站的客户群
  • 网站备案图标怎么添加餐饮客户管理系统
  • 罗湖网站制作多少钱法律类微信网站建设
  • 阳西县建设局网站怎么查询个人名下营业执照
  • 聊城做网站的公司教程昆明网站词排名优化
  • 单页营销网站最新互联网项目平台网站
  • 大学网站建设考核办法江宁交通建设集团网站
  • 怎么让客户做网站拍摄宣传片
  • thinkphp大型网站开发dw做的网站怎么被别人打开
  • 官网和网站的区别如何用html制作一个网页
  • 没有域名的网站网上图书商城网站设计
  • 淘客网站自己做机关门户网站建设管理情况
  • 网站移动端怎么做哪里有网站建设服务
  • 网站建设公司程序网站运营分析竞争对手
  • 进出口贸易公司网站建设成都世迅网站建设
  • iis 子网站seo教程网站优化
  • 购物网站制作例子集美建设局中心网站
  • 百度网站首页网址dedecms做的系统网站主页是哪一个文件
  • 西安英文旅游网站建设手机电脑版淘宝网址
  • 学做网站要学什么东西网站视频怎么做
  • 哪些网站是响应式的网页制作软件安卓版