首页 > 其他分享 >用数组作为函数参数来实现冒号排序函数

用数组作为函数参数来实现冒号排序函数

时间:2024-01-14 21:55:07浏览次数:26  
标签:sz arr 冒号 int ++ 函数参数 flag 排序

define _CRT_SECUNRE_NO_WARNINGS 1

include<stdio.h>

void bubble_sort(int arr[], int sz)
{
int i = 0;
for (i = 0; i < sz; i++)//冒泡的次数
{
int flag = 1;//假设这一趟排序已经有序
int j = 0;
for (j = 0; j < sz - 1 - i; j++)
{
if (arr[j]>arr[j + 1])
{
int tmp = arr[j];//交换相邻数字的数值
arr[j] = arr[j + 1];
arr[j + 1] = tmp;
flag = 0;//本趟排序并不完全有序
}
}
if (flag == 1)
{
break;
}
}

}
int main()
{
int arr[] = { 10, 9, 8, 7, 6, 4, 5, 3, 2, 1 };
int i = 0;
int sz = sizeof arr / sizeof (arr[0]);
//对arr进行的传参,实际上传递过去的是数组arr的首元素地址&arr[0]
bubble_sort(arr, sz );
for (i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
}

标签:sz,arr,冒号,int,++,函数参数,flag,排序
From: https://www.cnblogs.com/lwl0/p/17964257

相关文章

  • C++ vector和set排序效率比较
    转自:https://blog.csdn.net/adaptiver/article/details/529257921.介绍vector+sort实际是快排,快速排序是目前已知的所有排序算法中最快的排序算法。例子:#include<vector>#include<set>#include<algorithm>#include<stdio.h>#include<string.h>#include<unistd......
  • 【GUI软件】抖音搜索结果批量采集,支持多个关键词、排序方式、发布时间筛选等!
    一、背景介绍1.1爬取目标您好!我是@马哥python说,一名10年程序猿。我用python开发了一个爬虫采集软件,可自动按关键词抓取抖音视频数据。为什么有了源码还开发界面软件呢?方便不懂编程代码的小白用户使用,无需安装python,无需改代码,双击打开即用!软件界面截图:爬取结果截图:结果截......
  • js 排序方法
    数组有两个方法可以用来对元素重新排序:reverse()和sort()。顾名思义,reverse()方法就是将数组元素反向排列。比如:letvalues=[1,2,3,4,5];values.reverse();alert(values);//5,4,3,2,1这里,数组values的初始状态为[1,2,3,4,5]。通过调用reverse()反向排序,......
  • 拖曳排序
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content="width=......
  • python 2数组同时排序
    Python2数组同时排序在Python中,排序是一种常见的操作。当我们想要对多个数组进行排序时,可以使用zip()函数和sorted()函数来实现。本文将详细介绍如何使用这两个函数对数组进行排序,并提供相应的代码示例。首先,我们需要了解zip()函数的作用。zip()函数可以将多个数组中的元素一一......
  • 【GUI软件】抖音搜索结果批量采集,支持多个关键词、排序方式、发布时间筛选等!
    目录一、背景介绍1.1爬取目标1.2演示视频1.3软件说明二、代码讲解2.1爬虫采集模块2.2软件界面模块2.3日志模块三、获取源码及软件一、背景介绍1.1爬取目标您好!我是@马哥python说,一名10年程序猿。我用python开发了一个爬虫采集软件,可自动按关键词抓取抖音视频数据。为......
  • 排序算法,冒泡,选择,插入
    比较慢:冒泡排序:列表每两个相邻的数,如果前⾯⽐后⾯⼤,则交换这两个数。⼀趟排序完成后,则⽆序区减少⼀个数,有序区增加⼀个数。代码关键点:趟、⽆序区范围#include"stdio.h"intmain(){intarr[]={8,32,22,73,95,13,9,82,23,46,71,52,90,53,77,75,65,64,......
  • 冒泡排序初探
        冒泡排序是一种基于比较和交换操作的排序算法。每轮冒泡的过程都是从第一个元素开始,将该元素和相邻下一个元素进行比较和交换,使得较大的元素向右移动(如果该元素大于下一个元素,则两个元素交换;如果该元素小于等于下一个元素,则保持不变)。这样一来,每轮冒泡的过程都可以确定......
  • 时间复杂度(常数循环、strchr、冒泡排序、二分查找)
    1.1常数循环//计算复杂度voidFunc4(intk){intcount=0;for(intk=0;k<100;++k){++count;}printf("%d\n",count);}时间复杂度为:O(1)  注:O(1)不是代表算法只能运行一次,是常数次1.2strchr的时间复杂度//计算strchar的时间复杂度constchar*strchr(constc......
  • 排序算法之线性时间的排序和计数排序初识
    一:概述前面已经介绍了快速排序和堆排序。它们的时间复杂度都是O(nlogn)。在这篇博文中,要说明的是计数排序的初识和线性时间排序的介绍。二:具体说明<1>线性时间排序例如冒泡排序。如下图所示,因为8>3,所以8和3位置互换。例如堆排序。如下图所示,因为10>7,所以10和7位置交换。注意:有些特......