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

PTA-7-4 堆排序

代码如下:

#include<iostream>
using namespace std;
void change(int arr[], int n, int i);
int main()
{int n,i,end,arr[1000];cin >> n;for (i = 0; i < n; i++){cin >> arr[i];}//进行一次排序,把最大值放到顶端for (i = n/2-1; i >= 0; i--){change(arr, n, i);}for (i = 0; i < n; i++){cout << arr[i]<<' ';}cout << endl;end = n - 1;while (end > 0){//交换首尾的值int m;m = arr[0];arr[0] = arr[end];arr[end] = m;//进行一次排序,将(除上一次找出的)最大值放到顶端change(arr, end, 0);//遍历元素减一end--;for (i = 0; i < n; i++){cout << arr[i]<<' ';}cout << endl;}return 0;
}void change(int arr[], int n, int i)
{//max记录主干的下标,left,right记录树叶的下标int max = i, left = i * 2 + 1, right = i * 2 + 2;//如果树叶下标在数组范围内并且比主干大,将max更新为最大的树叶下标if (right < n && arr[right] > arr[max])max = right;if (left < n && arr[left] > arr[max])max = left;//如果max与主干下标i的值不相等,交换,并且以被交换的树叶为新的主干,向下检查,保证每个主干的值大于树叶if (max != i){int m;m = arr[i];arr[i] = arr[max];arr[max] = m;change(arr, n, max);}
}

相关文章:

PTA-7-4 堆排序

代码如下: #include<iostream> using namespace std; void change(int arr[], int n, int i); int main() {int n,i,end,arr[1000];cin >> n;for (i 0; i < n; i){cin >> arr[i];}//进行一次排序,把最大值放到顶端for (i n/2-1; i > 0; i--){change…...

uniapp滑动页面切换和下拉刷新,触底加载更多(swiper + scroll-view)

因为官方文档乱七八糟的&#xff0c;所以自己来总结下 需求&#xff1a; 常见的上方tag标签切换&#xff0c;下方是页面&#xff0c;上面点击切换&#xff0c;下面页面也切换&#xff0c;下方列表有下拉刷新&#xff0c;触底加载更多 因为这两个组件都是固定高度的&#xff0c;…...

git 删除 submodule 子模块的步骤

实验有效&#xff0c;这里删除了两个 submodule。 1, 执行删除 submodule mkdir tmp1 && cd tmp1 && git clone --recursive ssh://gitaaa.bbb.ccc.git \ && cd ixsolver && git checkout -b abranch_01 \ && git submodule deini…...

一文彻底解析 Compose 的穿透刺客 -- CompositionLocal

Compose 官方说明一直很简洁&#xff1a;CompositionLocal 是通过组合隐式向下传递数据的工具。 两个核心&#xff1a;隐式、向下传递&#xff0c;咋一看很懵&#xff0c;先不着急去理解&#xff0c;我们先看一段非常简单的代码&#xff1a; class MainActivity : ComponentAc…...

iOS 位移枚举NS_OPTIONS(如何实现多个枚举值的同时传入判断)

一、场景 当我们使用枚举这个东西时&#xff0c;有时需要多个枚举值任一一个满足时就ture&#xff0c;但是常用的枚举NS_ENUM定义好的枚举只能挨个判断&#xff0c;写一坨就既不美观也不好阅读&#xff0c;如下&#xff1a; typedef NS_ENUM (NSInteger, RPTestType){RPTestT…...

【Axure高保真原型】树控制内联框架

今天和大家分享树控制内联框架的原型模板&#xff0c;点击树的箭头可以打开或者收起子节点&#xff0c;点击最后一级人物节点&#xff0c;可以切换右侧内联框到对应的页面&#xff0c;左侧的树是通过中继器制作的&#xff0c;使用简单&#xff0c;只需要按要求填写中继器表格即…...

Visual Studio常用快捷键及调试操作

CtrlF10 运行到光标处 调试时候不用一行行按F10了CtrlMM 折叠或展开当前方法CtrlMO 折叠所有方法CtrlML 展开所有方法CtrlEW 自动换行/取消自动换行CtrlU 选中文本转小写CtrlShiftU 选中文本转大写CtrlWinO 启动软键盘F9 光标行加断点CtrlAltB 打开断点窗口 或通过Debug -> …...

MySQL 从零开始:02 MySQL 安装

文章目录 1、下载 MySQL 安装程序2、安装 MySQL 要操作 MySQL &#xff0c;首先要安装 MySQL &#xff0c;本文将一步步展示如何安装 MySQL&#xff0c;简直详细到令人发指。 环境&#xff1a; 操作系统&#xff1a;Windows10 64位MySQL版本&#xff1a;社区版 8.0.11.0 1、下…...

GB28181/GB35114平台LiveGBS何如添加白名单,使指定海康、大华、华为等GB28181摄像头或录像机设备可以免密接入

1、什么是GB/T28181级联 协议定义中的解释如下&#xff1a; 级联 cascadednetworking 两个信令安全路由网关之间按照上下级关系连接,上级中心信令控制服务器通过信令安全路由网 关可调用下级中心信令控制服务器所管辖的监控资源,下级中心信令控制服务器通过信令安全路由网 关向…...

【计算机组成与体系结构Ⅱ】MIPS指令系统(实验)

实验2&#xff1a;MIPS指令系统 一&#xff1a;实验目的 了解和熟悉指令级模拟器。熟练掌握MIPSsim模拟器的操作和使用方法。熟悉MIPS指令系统及其特点&#xff0c;加深对MIPS指令操作语义的理解。熟悉MIPS体系结构。 二&#xff1a;实验要求 采用指令集和流水线操作级模拟器…...

jsonvue-mobile 联动方式说明。

目录 jsonvue-mobile的联动类型分为两种 一种是命令式的&#xff1a; 另一种是响应式的&#xff1a; 联动场景 场景一&#xff1a;某一个字段的值变化时&#xff0c;同步修改另一个字段的值 命令式&#xff1a; 响应式&#xff1a; 场景一演示效果GIF 场景二&#xff…...

abseil中的微操

给分支预测器的建议 原始代码 以下代码用于实现多线程中只调用一次的效果&#xff0c;这里的if大多数情况下都是false&#xff0c;即已经被调用过了。这里是否被调用过用的是一个std::atomic<uint32_t>的原子变量 template <typename Callable, typename... Args>…...

NLP论文阅读记录 - 2022 | WOS 数据驱动的英文文本摘要抽取模型的构建与应用

文章目录 前言0、论文摘要一、Introduction1.1目标问题1.2相关的尝试1.3本文贡献 二.相关工作三.本文方法四 实验效果4.1数据集4.2 对比模型4.3实施细节4.4评估指标4.5 实验结果4.6 细粒度分析 五 总结 前言 Construction and Application of a Data-Driven Abstract Extractio…...

虹科新闻丨LIBERO医药冷链PDF温度计完成2024年航空安全鉴定,可安全空运!

来源&#xff1a;虹科环境监测技术 虹科新闻丨LIBERO医药冷链PDF温度计完成2024年航空安全鉴定&#xff0c;可安全空运&#xff01; 原文链接&#xff1a;https://mp.weixin.qq.com/s/XHT4kU27opeKJneYO0WqrA 欢迎关注虹科&#xff0c;为您提供最新资讯&#xff01; 虹科LIBE…...

智能搬运机器人作为一种新型的物流技术

随着物流行业的快速发展&#xff0c;货物转运的效率和准确性成为了企业竞争的关键因素之一。智能搬运机器人作为一种新型的物流技术&#xff0c;已经在许多企业中得到了广泛应用。本文将介绍富唯智能智能搬运机器人在物流行业的应用和优势。 在实际应用中&#xff0c;智能搬运机…...

UI自动化测试工具对企业具有重要意义

随着软件行业的不断发展&#xff0c;企业对高质量、高效率的软件交付有着越来越高的要求。在这个背景下&#xff0c;UI自动化测试工具成为了企业不可或缺的一部分。以下是UI自动化测试工具对企业的重要作用&#xff1a; 1. 提高软件质量 UI自动化测试工具能够模拟用户的操作&am…...

Linux--进程状态与优先级

概念 进程指的是程序在执行过程中的活动。进程是操作系统进行资源分配和调度的基本单位。 进程可以看作是程序的一次执行实体&#xff0c;它包含了程序代码、数据以及相关的执行上下文信息。操作系统通过创建、调度和管理多个进程来实现对计算机系统资源的有效利用。 每个进程…...

如何实现无公网ip固定TCP端口地址远程连接Oracle数据库

文章目录 前言1. 数据库搭建2. 内网穿透2.1 安装cpolar内网穿透2.2 创建隧道映射 3. 公网远程访问4. 配置固定TCP端口地址4.1 保留一个固定的公网TCP端口地址4.2 配置固定公网TCP端口地址4.3 测试使用固定TCP端口地址远程Oracle 前言 Oracle&#xff0c;是甲骨文公司的一款关系…...

Orchestrator源码解读2-故障失败发现

目录 前言 核心流程函数调用路径 GetReplicationAnalysis 故障类型和对应的处理函数 ​编辑 拓扑结构警告类型 核心流程总结 与MHA相比 前言 Orchestrator另外一个重要的功能是监控集群&#xff0c;发现故障。根据从复制拓扑本身获得的信息&#xff0c;它可以识别各种故…...

REST2SQL是什么?它有什么功能和特性?它值不值得我们去学习?我们该如何去学习呢?

REST2SQL是一种将RESTful API转换为SQL查询的工具或技术。它可以将RESTful API中的请求转换为对数据库的SQL查询&#xff0c;以便从数据库中检索、更新或删除数据。 REST2SQL的工作原理是通过分析RESTful API的请求参数和路径&#xff0c;将其转换为相应的SQL查询语句。这样可…...

别再用默认规划器了!手把手教你为TurtleBot3在ROS2 Humble上写个自己的导航大脑

别再用默认规划器了&#xff01;手把手教你为TurtleBot3在ROS2 Humble上写个自己的导航大脑 当TurtleBot3在狭窄走廊里反复撞墙&#xff0c;或者面对动态障碍物时反应迟钝&#xff0c;大多数开发者首先想到的是调整Nav2的默认参数。但真正的高手都知道——与其在有限的黑箱参数…...

Nitrox模组:如何将Subnautica的单人深海恐惧变为团队协作冒险

Nitrox模组&#xff1a;如何将Subnautica的单人深海恐惧变为团队协作冒险 【免费下载链接】Nitrox An open-source, multiplayer modification for the game Subnautica. 项目地址: https://gitcode.com/gh_mirrors/ni/Nitrox 当你第一次潜入4546B行星的海洋时&#xff…...

学术PDF处理流水线:OpenClaw+Qwen3-32B-Chat镜像实现论文精读

学术PDF处理流水线&#xff1a;OpenClawQwen3-32B-Chat镜像实现论文精读 1. 为什么需要自动化论文精读工具 作为一名经常需要阅读大量学术文献的研究者&#xff0c;我长期被三个问题困扰&#xff1a;一是PDF文档的信息密度太高&#xff0c;逐字阅读耗时耗力&#xff1b;二是跨…...

AI辅助配置:让快马平台智能生成最优化的openclaw安装与调试方案

AI辅助配置&#xff1a;让快马平台智能生成最优化的openclaw安装与调试方案 最近在做一个机器人抓取项目&#xff0c;需要安装和配置openclaw模块。作为一个刚接触机器人控制的新手&#xff0c;面对复杂的依赖关系和参数调试&#xff0c;一开始真是有点无从下手。好在发现了In…...

ChatTTS WebUI 字数限制解析与高效处理方案

最近在项目中用到了 ChatTTS 的 WebUI 接口进行语音合成&#xff0c;发现了一个挺实际的问题&#xff1a;它是有字数限制的。直接丢一篇长文章过去&#xff0c;经常会因为超限而失败&#xff0c;用户体验和开发流程都受到了影响。经过一番摸索和实践&#xff0c;我总结了一套处…...

Web前端开发毕业设计项目实战:从零搭建一个高可用、可扩展的TodoList应用

很多同学在做前端毕业设计时&#xff0c;常常感觉无从下手&#xff0c;要么功能太简单显得单薄&#xff0c;要么技术选型混乱&#xff0c;代码写得像“一锅粥”&#xff0c;答辩时被老师问得哑口无言。今天&#xff0c;我们就来一起动手&#xff0c;从零搭建一个结构清晰、技术…...

MPC路径跟踪控制横纵垂向控制:状态空间方程推导之旅

MPC路径跟踪控制横纵垂向控制状态空间方程推导服务&#xff0c;线性化和离散化 采用线性模型预测控制理论&#xff0c;推导离散状态空间方程。在自动驾驶以及许多运动控制领域&#xff0c;MPC&#xff08;模型预测控制&#xff09;就像一位运筹帷幄的智者&#xff0c;精准地规划…...

从N元文法到BERT:用Python代码串讲NLP核心模型演进(附实战代码)

从N元文法到BERT&#xff1a;用Python代码串讲NLP核心模型演进&#xff08;附实战代码&#xff09; 自然语言处理&#xff08;NLP&#xff09;正以前所未有的速度改变我们与数字世界的交互方式。从早期的简单统计模型到如今动辄数十亿参数的预训练模型&#xff0c;这条技术演进…...

HunyuanImage-3.0-Instruct:8步玩转AI创意绘图

HunyuanImage-3.0-Instruct&#xff1a;8步玩转AI创意绘图 【免费下载链接】HunyuanImage-3.0-Instruct-Distil 项目地址: https://ai.gitcode.com/tencent_hunyuan/HunyuanImage-3.0-Instruct-Distil 导语 腾讯混元最新发布的HunyuanImage-3.0-Instruct-Distil模型&a…...

从动物行为到工业质检:手把手教你用Deeplabcut 2.3.5搭建自己的关键点检测模型

从动物行为到工业质检&#xff1a;手把手教你用Deeplabcut 2.3.5搭建自己的关键点检测模型 在计算机视觉领域&#xff0c;关键点检测技术正从实验室走向千行百业。最初为动物行为研究设计的Deeplabcut&#xff0c;如今因其开箱即用的易用性和出色的精度&#xff0c;正在制造业、…...