社区
C++ 语言
帖子详情
欢迎讨论,int a,b,c 按升序排列最高效算法!
whizstorm
2005-01-22 03:46:14
RT
...全文
304
11
打赏
收藏
欢迎讨论,int a,b,c 按升序排列最高效算法!
RT
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wasltone
2005-01-23
打赏
举报
回复
楼上的。。
ASM,真是刷滑头。。
要不我给个机器码?
0110001001010 010010100100 0100 0010010100100010 01 00101 01
001010010 00101010010010 001001000100 010010101010 00 10 0101
10010100 0010010
..
^_^
nbb
2005-01-22
打赏
举报
回复
这个是效率最高的:
__asm
{
mov eax,a
mov ebx,b
mov ecx,c
cmp eax,ebx
jle g1
xchg eax,ebx
: g1
cmp ebx,ecx
jle exit
xchg ebx,ecx
cmp eax,ebx
jle exit
xchg eax,ebx
: exit
}
Lute
2005-01-22
打赏
举报
回复
对三个数最高效的算法是直接比较法,其实就是个决策树,效率是比较型排序算法的最优情况
O(nlogn),不过就和下面程序一样,判断太多了:
void Sort3Num(int a, int b, int c)
{
if(a<b)
{
if(b<=c)
cout<<a<<b<<c<<endl;
else if(b>=c && c>=a)
cout<<a<<c<<b<<endl;
else if(c<=a)
cout<<c<<a<<<<b<<endl;
}
else
{
if(a<=c)
cout<<b<<a<<c<<endl;
else if(a>=c && c>=b)
cout<<b<<c<<a<<endl;
else if(c<=b)
cout<<c<<b<<a<<endl;
}
}
To jsunnygirl(太阳的女儿):快排的效率在最坏情况下和普通冒泡差不多,效率比较稳定的是归并排序:)
pcboyxhy
2005-01-22
打赏
举报
回复
这个好像算法发挥的余地不是很大
jsunnygirl
2005-01-22
打赏
举报
回复
快速排序效率最高吧,算法是不是和待排个数无关啊
jameswwb
2005-01-22
打赏
举报
回复
if( a > b && !( c > b ) )
cout<< a << b << c;
这个是升序排列???有点不明白
goodluckyxl
2005-01-22
打赏
举报
回复
列举完全效率最高
if( a > b && !( c > b ) )
cout<< a << b << c;
whizstorm
2005-01-22
打赏
举报
回复
冒泡
int temp;
if(a>b)
{
temp = a;
a = b;
b = temp:
}
if(a>c)
{
temp = a;
a = c;
c = temp;
}
if(b>c)
{
temp = b;
b = c;
c = temp;
}
justoday
2005-01-22
打赏
举报
回复
就三个数吗?
yjh1982
2005-01-22
打赏
举报
回复
为了作业贴的鉴定,楼主得先给出自己的算法
题解:AcWing 800 数组元素的目标和
本题要求在两个
升序
数组A和B中找出唯一满足A[i]+B[j]=x的数对(i,j)。核心解法为双指针(对撞指针):i从A首端右移,j从B尾端左移,利用数组单调性将时间复杂度优化至O(n+m),空间复杂度O(1)。该方法适用于两数组和等于目标值的经典问题。
C++ priority_queue深度解析:从仿函数到自定义堆实现
本文深入剖析C++ priority_queue的底层机制,重点阐述其作为容器适配器的本质、基于二叉堆的
算法
实现(向上/向下调整),以及仿函数作为比较策略的核心作用。详细说明仿函数需满足严格弱序、与堆序逻辑的反直觉关系(compare(a,b)为true表示a优先级低于b),并手写MyPriorityQueue模拟实现,涵盖模板设计、Floyd建堆、接口封装及自定义比较器集成。同时分析时间复杂度、Top K等典型应用场景及常见陷阱。
C# 冒泡排序完整版|基础 + 优化提前终止 + 5 组测试用例 + 面试详解(.NET8 原生)
本文详解C#实现的冒泡排序
算法
,涵盖基础版本与标志位优化版本,分析外层/内层循环逻辑、元素比较交换过程、时间复杂度(O(n²)最差/O(n)最优)、空间复杂度O(1)及稳定性。提供.NET8原生代码、5组测试用例(乱序/负数/有序/逆序等),并对比快速排序、归并排序等
算法
优劣,突出其教学价值与工程局限。
题解:AtCoder AT_awc0088_e
Int
ervals That Can Be Arranged Alternately
本文解析AtCoder题目E -
Int
ervals That Can Be Arranged Alternately,核心是判定连续子区间能否重排成相邻颜色不同的序列。关键转化在于:区间[l,r]为好区间当且仅当前缀差分数组cumul满足|cumul[r]−cumul[l−1]|≤1。采用莫队
算法
离线处理Q个区间询问,通过分块排序与双指针移动
高效
统计满足条件的区间对数,时间复杂度O((N+Q)√N),空间复杂度O(N)。
YOLOv11【第六章:模型压缩与极致优化篇·第18节】NAS(神经架构搜索):自动化搜索最适合端侧的 YOLOv11 结构!
本文系统讲解神经架构搜索(NAS)在YOLOv11端侧部署中的工程化应用,涵盖NAS三要素(搜索空间、搜索策略、评估方法),重点剖析硬件感知的延迟建模、多目标帕累托优化、DARTS可微分搜索与NSGA-II进化搜索实战,并结合延迟查找表(LUT)、剪枝与蒸馏联合优化,实现精度-延迟协同最优。内容聚焦ARM等边缘设备适配,强调代理指标设计、搜索空间裁剪及端到端验证。
C++ 语言
65,210
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章