news 2026/6/2 3:03:48

东方博宜OJ 1010:数组元素的排序 ← 折半插入排序

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
东方博宜OJ 1010:数组元素的排序 ← 折半插入排序

【题目来源】
https://oj.czos.cn/p/1010

【题目描述】
对数组的元素按从小到大进行排序。

【输入格式】
第一行有一个整数 n(5≤n≤10);
第二行有 n 个整数,每个整数的值在 [0, 10^9]的范围内。

【输出格式】
输出排序后的数组。

【输入样例】
8
1 2 3 6 8 7 4 5

【输出样例】
1 2 3 4 5 6 7 8

【数据范围】
5≤n≤10

【算法分析】
● 折半插入排序,也叫二分插入排序。它是对直接插入排序的优化,在查找插入位置时使用二分查找,从而减少比较次数。

【算法代码:
折半插入排序

#include <bits/stdc++.h> using namespace std; const int N=15; int a[N]; int n; int main() { cin>>n; for(int i=1; i<=n; i++) cin>>a[i]; for(int i=1; i<=n; i++) { int t=a[i]; int le=0,ri=i-1,mid; while(le<=ri) { mid=(le+ri)/2; if(a[mid]>t) ri=mid-1; else le=mid+1; } for(int j=i-1; j>=ri+1; j--) a[j+1]=a[j]; a[ri+1]=t; } for(int i=1; i<=n; i++) cout<<a[i]<<" "; return 0; } /* in: 5 6 9 2 7 1 out: 1 2 6 7 9 */




【参考文献】
https://blog.csdn.net/hnjzsyjyj/article/details/161347829
https://blog.csdn.net/hnjzsyjyj/article/details/161332702
https://blog.csdn.net/hnjzsyjyj/article/details/161346075
https://blog.csdn.net/hnjzsyjyj/article/details/161588834


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/2 3:02:12

MySQL新增字段未同步Java实体的后果与解决方案

好的&#xff0c;这是一个在使用MySQL数据库和Java应用&#xff08;如基于MyBatis、Hibernate/JPA等ORM框架&#xff09;时常见的问题。当数据库表结构发生变化&#xff08;例如新增了一个字段&#xff09;&#xff0c;但对应的Java实体类&#xff08;Entity或POJO&#xff09;…

作者头像 李华
网站建设 2026/6/2 2:53:45

google秒收录方法是真的吗?Shopify站靠外链3天引来蜘蛛

一份涵盖500个新建Shopify独立站的服务器日志监测表格显示&#xff0c;新域名解析完成后的72小时内&#xff0c;无外部信号介入的站点谷歌爬虫访问记录为零。把带有产品参数的页面名称发布到DA&#xff08;域名权重&#xff09;超过75的活跃行业论坛跟帖区&#xff0c;带有Goog…

作者头像 李华
网站建设 2026/6/2 2:50:57

Arduino状态机与中断实战:LCD灯光游戏开发全解析

1. 项目概述与核心思路做硬件开发的朋友&#xff0c;尤其是从Arduino入门的&#xff0c;应该都玩过那种经典的“打地鼠”式灯光游戏——一排LED灯随机亮起&#xff0c;玩家需要在灯灭之前按下对应的按钮。这个项目本身不复杂&#xff0c;但它几乎涵盖了嵌入式交互系统最核心的几…

作者头像 李华