C题目11:数组a[m]排序
每日小语
双手,且放下一切劳作,前额,也忘掉忧思,此时此刻我所有的感觉就想沉入安睡。
自己敲写
这个问题老师上课讲了一种方法,叫做冒泡排序。基本思想是
1.找最小值,放到a[0]
2.从a[1]~a[3]找最小值,放到a[1]
自己敲写的时候,问题首先出在了如何设置一个初始变量上
int arr[5] = {10, 20, 30, 40, 50};
#include <stdio.h>int main()
{int a[5]={1,4,3,5,2};for(int i=0;i>0;i++){for(int j=1;j>0;j++){if (a[i]>a[j]){a[i]=a[j];a[j]=a[i];}}}printf(a);return 0;
}
目前代码。问题很多。
#include <stdio.h>int main()
{int a[5] = {1, 4, 3, 5, 2};for (int i = 0; i < 4; i++){for (int j = 0; j < 4; j++){if (a[j] > a[j+1]){int temp = a[j];a[j] = a[j+1];a[j+1] = temp;}}}printf("Sorted Array: %d %d %d %d %d\n", a[0], a[1], a[2], a[3], a[4]);return 0;
}
-
在外层循环中,
i应该从0开始递增,而不是i>0。循环条件应为i<4,因为数组长度为5,下标从0到4。 -
在内层循环中,
j应该从0开始递增,而不是j>0。循环条件应为j<4。 -
在交换数组元素的部分,应该是先将较大的元素赋值给临时变量,然后再将较小的元素赋值给较大的元素,最后再将临时变量赋值给较小的元素。
-
在使用
printf输出数组时,需要提供一个格式字符串,例如"Array: %d %d %d %d %d\n",并提供要输出的数组元素。 -
问题还是出在循环,两层循环理解不当。
当使用冒泡排序算法时,两层嵌套循环的作用是进行比较和交换操作,以便将较大的元素逐步移动到数组的末尾。以下是两层循环的具体作用:
1. **外层循环(i循环):** 外层循环负责控制每一轮的比较和交换操作。对于长度为 n 的数组,需要进行 n-1 轮比较,确保数组中的所有元素都被正确地排序。外层循环的索引变量通常用 i 表示。
```c
for (int i = 0; i < 4; i++)
{
// 内层循环将执行比较和交换操作
}
```2. **内层循环(j循环):** 内层循环负责实际的比较和交换操作。在每一轮外层循环中,内层循环从数组的起始位置开始,依次比较相邻的两个元素,并根据需要进行交换。内层循环的索引变量通常用 j 表示。
```c
for (int j = 0; j < 4 - i; j++)
{
// 比较和交换操作
}
```- `4 - i` 是因为在每一轮外层循环之后,数组的末尾已经是当前轮次中最大的元素,不再需要比较和交换。因此,内层循环的范围在逐渐减小。
- 比较相邻元素,如果前一个元素大于后一个元素,则交换它们的位置,以确保较大的元素向数组的末尾移动。
整体来说,两层循环共同工作,通过多次比较和交换,将数组中较大的元素逐步移动到末尾,实现排序的目的。这就是冒泡排序算法的基本思想。
相关文章:
C题目11:数组a[m]排序
每日小语 双手,且放下一切劳作,前额,也忘掉忧思,此时此刻我所有的感觉就想沉入安睡。 自己敲写 这个问题老师上课讲了一种方法,叫做冒泡排序。基本思想是 1.找最小值,放到a[0] 2.从a[1]~a[3]找最小值&a…...
编译器安全
在供应链安全中,大家一直关注采用SCA工具分析开源组件中的安全漏洞以及许可证的合规性。但是对于底层软件开发使用的编译器、链接器等安全却容易被忽视,其中有没有安全漏洞、有没有运行时缺陷、有没有被植入漏洞、木马等,似乎并没有引起多少人…...
docker部署gitlab 12.10.6过程
docker部署gitlab 12.10.6过程 1.docker安装 docker指定版本安装【官方文档步骤】 官方文档地址:https://docs.docker.com/engine/install/centos/ # 1.安装yum工具及设置docker-ce镜像库 sudo yum install -y yum-utils# 国外的镜像下载太慢了改成阿里云镜像库 s…...
单例设计模式是什么?什么是 Singleton 单例设计模式?Python 单例(单件)设计模式示例代码
什么是 Singleton 单例设计模式? 单例模式是一种创建型设计模式,它确保一个类只有一个实例,并提供一个全局访问点来访问该实例。 主要思想: 单例模式确保某个类只有一个实例,并提供了一个访问该实例的全局访问点。它…...
Redis跳跃表
前言 跳跃表(skiplist)是一种有序数据结构,它通过在每一个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的。 跳跃表支持平均O(logN),最坏O(N),复杂度的节点查找,还可以通过顺序性来批量处理节点…...
C++基础从0到1入门编程(二)
系统学习C 方便自己日后复习,错误的地方希望积极指正 往期文章:C基础从0到1入门编程(一) 参考视频: 1.黑马程序员匠心之作|C教程从0到1入门编程,学习编程不再难 2.系统化学习C 1 函数指针和回调函数 如果把函数的地址…...
Uniapp扫码预览连接地址与手机不在同一网段
在开发Uniapp应用时,这里有一个扫码预览的功能,电脑与手机都是在一网络下,之前点开后预览地址一直是169.254.3.x的地址,通过WINR键输入cmd运行,然后ipconfig查看所有网络连接。发现有一个虚拟网络连接的地址是169.251.…...
万界星空科技SMT行业生产管理MES系统解决方案
一、SMT行业特点: SMT(Surface Mounted Technology)作为电子组装行业里首先的技术和工艺,选择合适的MES解决方案来保障SMT生产的成功至关重要。 电子行业涉及的范围非常广,包含了汽车、电脑、电视、手机等产品上&…...
vue3 uniapp h5 安卓和iOS开发适配踩坑记录
font-size适配屏幕大小及iOS和安卓状态栏及安全距离的处理 App.vue <script setup lang"ts"> import { onLaunch, onShow, onHide } from "dcloudio/uni-app"; import ./main.scss onLaunch(() > {console.log("App Launch");var wid…...
inf和nan
在某些编程语法中inf表示无穷大,nan表示不是一个数(not a number) nan表示这个数不确定,而无穷大表示这个数任意大 1/0inf 这里把0当做一个无限接近0,但是非0的数 5-inf-inf 一个数减去无穷大会等于负无穷大 而inf-infnan 因为两个无穷大相减有很多可能,可能等于一个常数,也可能…...
十. Linux关机重启命令与Vim编辑的使用
关机重启命令 shutdown命令 其他关机命令 其他重启命令 系统运行级别 系统默认运行级别与查询 退出登录命令logout 文本编辑器Vim Vim简介 没有菜单,只有命令Vim工作模式 Vim常用命令 插入命令 定位命令 删除命令 复制和剪切命令 替换和取消命令 搜索和搜索替换命令 保存和退出…...
Spring-IOC-@Value和@PropertySource用法
1、Book.java PropertySource(value"classpath:配置文件地址") 替代 <context:property-placeholder location"配置文件地址"/> Value("${book.bid}") Value("${book.bname}") Value("${book.price}") <bean id&…...
如何理解Python中一切皆对象?
Python 一、示例代码二、Python中的魔法方法 一、示例代码 有理数类 import mathclass rational:def __init__(self,p,q):self.p pself.q qdef __str__(self):return "{} / {}".format(self.p,self.q)def simplify(self):gcd math.gcd(self.p,self.q)return rat…...
【如何学习Python自动化测试】—— 鼠标键盘操作
5 、 鼠标键盘操作 在浏览器中,通常会用到鼠标来进行操作,比如右键菜单中选择一个操作,在 selenium 中提供了下列鼠标相关操作。 ActionChains 类提供了以下方法: 点击鼠标:click()右击鼠标:context…...
随笔-事儿就这么个事儿
好久没写了,小A要催更,还答应让我写一下他的经历,这还有啥说的,开整。 1、升级 前段时间登录公司的办公系统处理一个事务申请,发现有个粗体标红的通知,是关于今年的晋升名单公示。进去看了一眼࿰…...
django理解03 数据库引入
配置 settings.py DATABASES {"default": {"ENGINE": "django.db.backends.mysql",NAME:307_django_db,USER: root,PASSWORD: 123456,HOST: 127.0.0.1,PORT: 3306,} }先创建指定名称的数据库databases create database self_django_db DEFAUL…...
Jtti:windows中apache怎么实现负载均衡
Jtti:windows中apache怎么实现负载均衡 在Windows环境下,你可以使用Apache HTTP Server搭建负载均衡集群。Apache提供了一个模块叫做mod_proxy,它可以用来实现反向代理和负载均衡。以下是一个简单的步骤来配置Apache负载均衡: 步骤…...
2311rust,到43版本更新
1.38.0 流水编译 要编译仓库,编译器不需要完全构建依赖项.相反,只需要它们的"元数据"(即类型,依赖关系,导出列表). 在编译过程的早期生成此元数据.从Rust1.38.0开始,Cargo利用这一点,在准备好元数据后立即自动开始构建依赖的仓库. 检查错误使用mem::{uninitialize…...
前端埋点上报的几种方式
现代Web应用程序中,埋点上报是一种重要的数据收集和分析手段。本文将介绍前端埋点上报的几种常见方式,并详细阐述如何在项目中运用这些方式进行数据上报,以帮助开发者更好地进行数据收集和分析。 上报方式 在前端中,常见的埋点上…...
外部 prometheus监控k8s集群资源
prometheus监控k8s集群资源 一,通过CADvisior 监控pod的资源状态1.1 授权外边用户可以访问prometheus接口。1.2 获取token保存1.3 配置prometheus.yml 启动并查看状态1.4 Grafana 导入仪表盘 二,通过kube-state-metrics 监控k8s资源状态2.1 部署 kube-st…...
基于MCP协议的AI Agent工具集成框架:mcp-remnawave架构解析与实战
1. 项目概述:一个面向AI代理的模块化工具集成框架最近在折腾AI应用开发,特别是围绕AI Agent(智能体)的生态构建时,发现一个挺有意思的项目:moksharth77/mcp-remnawave。乍一看这个仓库名,可能会…...
抖音直播间弹幕数据抓取技术深度解析:如何绕过复杂签名机制实现实时数据采集
抖音直播间弹幕数据抓取技术深度解析:如何绕过复杂签名机制实现实时数据采集 【免费下载链接】DouyinLiveWebFetcher 抖音直播间网页版的弹幕数据抓取(2025最新版本) 项目地址: https://gitcode.com/gh_mirrors/do/DouyinLiveWebFetcher …...
ClawRecall:为AI Agent设计的三层记忆系统与Token预算管理
1. 项目概述:为AI Agent构建轻量、持久的记忆系统 在构建AI Agent时,我们常常面临一个核心矛盾:为了让Agent显得“聪明”且“善解人意”,它需要记住与用户交互的历史、用户的偏好以及它自己做出的关键决策;但另一方面&…...
LLMs 的软件/硬件协同优化策略 – 第二部分(软件)
原文:towardsdatascience.com/sw-hw-co-optimization-strategy-for-llms-part-2-software-65ea2247481e 随着新的 LLM 模型和特性的不断涌现(查看hugging face LLM 排行榜),软件工具和库的发布速度正在加快。这种快速进步也在 AI …...
游戏服务器容器化部署:基于Docker的Archon镜像实战指南
1. 项目概述:一个为游戏服务器量身定制的容器化部署方案如果你和我一样,曾经被游戏服务器的部署、迁移和运维搞得焦头烂额,那么看到SufficientDaikon/archon这个项目,你可能会和我当初一样眼前一亮。这本质上是一个为特定游戏&…...
AISMM模型成熟度评估全解析(附2024最新打分细则与组织自测速查表)
更多请点击: https://intelliparadigm.com 第一章:AISMM模型评估报告解读会 AISMM(AI Security Maturity Model)是由国际云安全联盟(CSA)提出的面向生成式AI系统安全能力的成熟度评估框架,其评…...
golang如何实现桌面应用热更新_golang桌面应用热更新实现攻略
Go桌面应用无法真正热更新,只能通过go-selfupdate实现无缝重启:下载校验新二进制、替换并重启,需适配各平台签名与自启机制,插件机制不可行,核心难点在于更新时机判断与状态快照恢复。Go 桌面应用热更新无法真正“热”…...
前端光标交互深度实践:从CSS属性到无障碍访问的完整指南
1. 项目概述与核心价值最近在整理个人项目时,我重新审视了一个几年前启动但一直觉得很有意思的仓库:seanpm2001/Computer-cursor-tech-support_Website。光看这个标题,你可能会有点摸不着头脑——“计算机光标技术支持网站”?这听…...
Native Instruments Komplete 26 音乐制作套装发布:新增 62 款组件,多版本满足多样需求
Native Instruments Komplete 26:音乐制作套装再升级Native Instruments 推出了最新版的 Komplete 音乐制作套装,新增 62 款组件,其中 Absynth 6 十分独特。Komplete 26 有多种版本,包括三款售价 99 美元的精选套装,以…...
基于AI与大语言模型的书签智能管理:从向量数据库到语义搜索的实践
1. 项目概述:当书签管理遇上AI作为一名在互联网行业摸爬滚打了十几年的老鸟,我收藏夹里的书签数量,大概能见证整个互联网的变迁。从早期的“网页快照”到后来的“稍后阅读”,工具换了一茬又一茬,但痛点始终如一&#x…...
