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

济南 规划 网站网站设计心得体会

济南 规划 网站,网站设计心得体会,企业网站seo工作,吐鲁番大型网站建设平台#x1f60f;★,:.☆(#xffe3;▽#xffe3;)/$:.★ #x1f60f; 这篇文章主要介绍常用排序算法。 学其所用#xff0c;用其所学。——梁启超 欢迎来到我的博客#xff0c;一起学习#xff0c;共同进步。 喜欢的朋友可以关注一下#xff0c;下次更新不迷路#x1… ★,°:.☆(▽)/$:.°★ 这篇文章主要介绍常用排序算法。 学其所用用其所学。——梁启超 欢迎来到我的博客一起学习共同进步。 喜欢的朋友可以关注一下下次更新不迷路 文章目录 :smirk:1. 算法介绍:blush:2. C实现 1. 算法介绍 排序算法是计算机科学中常见的一类算法用于将一组数据按照特定的顺序进行排列。下面介绍几种常见的排序算法 冒泡排序Bubble Sort 从待排序序列的第一个元素开始两两比较相邻元素的大小如果顺序不对则交换位置。每一轮结束后最大或最小的元素会移动到末尾。时间复杂度平均情况和最坏情况下为 O(n^2)最好情况下为 O(n)。空间复杂度O(1)。 插入排序Insertion Sort 将未排序序列的第一个元素插入已排序序列的正确位置。从第二个元素开始依次与前面的元素比较并插入到正确位置。时间复杂度平均情况和最坏情况下为 O(n^2)最好情况下为 O(n)。空间复杂度O(1)。 选择排序Selection Sort 每一轮从待排序序列中选择最小或最大的元素与当前位置交换。每一轮结束后当前位置之前的元素都是有序的。时间复杂度平均情况和最坏情况下为 O(n^2)。空间复杂度O(1)。 快速排序Quick Sort 选择一个基准元素将序列分为比基准小的元素和比基准大的元素。递归地对划分后的子序列进行快速排序。时间复杂度平均情况下为 O(nlogn)最坏情况下为 O(n^2)。空间复杂度平均情况下为 O(logn)最坏情况下为 O(n)。 归并排序Merge Sort 将序列递归地拆分成两个子序列对子序列进行排序然后合并两个有序子序列。使用分治法思想将排序问题分解为较小的子问题。时间复杂度平均情况下为 O(nlogn)。空间复杂度O(n)。 2. C实现 #include iostream #include cstdlib #include ctime// 冒泡排序 bubbleSort 两两比较 void bubbleSort(int arr[], int n) {for (int i 0; i n-1; i) {for (int j 0; j n-i-1; j) {if (arr[j] arr[j1]) {std::swap(arr[j], arr[j1]);}}} }// 选择排序 selectionSort 选最小值 void selectionSort(int arr[], int n) {for (int i 0; i n-1; i) {int minIndex i;for (int j i1; j n; j) {if (arr[j] arr[minIndex]) {minIndex j;}}std::swap(arr[i], arr[minIndex]);} }// 插入排序 insertionSort 依次成序 void insertionSort(int arr[], int n) {for (int i 1; i n; i) {int key arr[i];int j i - 1;while (j 0 arr[j] key) {arr[j 1] arr[j];j--;}arr[j 1] key;} }// 归并排序 mergeSort void merge(int arr[], int left, int mid, int right) {int n1 mid - left 1;int n2 right - mid;int* L new int[n1];int* R new int[n2];for (int i 0; i n1; i) {L[i] arr[left i];}for (int j 0; j n2; j) {R[j] arr[mid 1 j];}int i 0;int j 0;int k left;while (i n1 j n2) {if (L[i] R[j]) {arr[k] L[i];i;} else {arr[k] R[j];j;}k;}while (i n1) {arr[k] L[i];i;k;}while (j n2) {arr[k] R[j];j;k;}delete[] L;delete[] R; }void mergeSort(int arr[], int left, int right) {if (left right) {int mid left (right - left) / 2;mergeSort(arr, left, mid);mergeSort(arr, mid 1, right);merge(arr, left, mid, right);} }// 快速排序 quickSort int partition(int arr[], int low, int high) {int pivot arr[high];int i low - 1;for (int j low; j high; j) {if (arr[j] pivot) {i;std::swap(arr[i], arr[j]);}}std::swap(arr[i1], arr[high]);return i1; }void quickSort(int arr[], int low, int high) {if (low high) {int pi partition(arr, low, high);quickSort(arr, low, pi - 1);quickSort(arr, pi 1, high);} }// 打印数组 void printArray(int arr[], int size) {for (int i 0; i size; i) {std::cout arr[i] ;}std::cout std::endl; }int main() {const int SIZE 10;// 生成随机整数数组int arr[SIZE];srand(time(0));for (int i 0; i SIZE; i) {arr[i] rand() % 100; // 生成 0 到 99 的随机数}std::cout Original array: ;printArray(arr, SIZE);// 使用冒泡排序进行排序bubbleSort(arr, SIZE);std::cout Array after bubble sort: ;printArray(arr, SIZE);// 使用选择排序进行排序selectionSort(arr, SIZE);std::cout Array after selection sort: ;printArray(arr, SIZE);// 使用插入排序进行排序insertionSort(arr, SIZE);std::cout Array after insertion sort: ;printArray(arr, SIZE);// 使用归并排序进行排序mergeSort(arr, 0, SIZE-1);std::cout Array after merge sort: ;printArray(arr, SIZE);// 使用快速排序进行排序quickSort(arr, 0, SIZE-1);std::cout Array after quick sort: ;printArray(arr, SIZE);return 0; }编译运行 g -o main main.cpp ./main以上。
http://www.zqtcl.cn/news/220008/

相关文章:

  • 到底建手机网站还是电脑网站网站视频怎么做
  • 小区网站建设前端手机网站
  • 做一个网站价格WordPress好看的404
  • 查看注册过的网站在线网站软件免费下载
  • 门户网站建设公司价位域名出售网站
  • 亿级流量网站架构自己制作一个网站
  • 企业网站seo成功案例天津网站建设制作品牌公司
  • 衡水做网站电话郏县建设局网站
  • 美工做网站尺寸多少钱怎么做网站免费的
  • 会计信息系统网站建设流程图手机网站图片宽度
  • 已备案网站增加域名wordpress 百度熊掌号
  • 网站建设维护课件ppt百度搜索一下百度
  • 重庆企业网站开发方案wordpress菜单插件
  • 江苏网站seo设计什么学习网站建设
  • 青海网站建设系统电商出口营销要多少钱
  • 上海的网站设计公司百度上做优化
  • 连云港权威网站优化服务如何自己做解析网站
  • 学校网站建设调研报告wordpress update_post_meta
  • 法人变更在哪个网站做公示做企业平台的网站有哪些
  • 制作网站过程有免费的网站域名吗
  • 简单做网站用什么软件价格优惠
  • 在线自助下单网站建设银行上海分行招聘网站
  • 网站备案期间停止解析网站改版后 存在大量404页面
  • 朝阳网站建设 国展东莞常平邮政编码多少
  • 深圳网站建设微赢天下做视频网站服务器多少钱
  • 中小企业网站建设与管理课后答案wordpress主题 亚马逊
  • 网站制作关键技术上海网站建设收费
  • 深圳做互联网教网站公司集团管理软件
  • 华宁网站建设网站建设与维护新的体会
  • 网站后台清空北京网站建设厂家