前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >强行使用递归函数来排列数组

强行使用递归函数来排列数组

作者头像
发布2024-04-30 21:00:43
710
发布2024-04-30 21:00:43
举报
文章被收录于专栏:转自CSDN转自CSDN

代码效果

递归代码内容

void OrderTurnNumber(int* arr, int overflow, int sz) {     if (overflow < sz - 1)     {         if (*arr > *(arr + 1))         {             int tmp = *arr;             *arr = *(arr + 1);             *(arr + 1) = tmp;             if (overflow > 0)             {                 OrderTurnNumber(arr - 1, overflow - 1,sz);             }         }     OrderTurnNumber(arr + 1, overflow + 1,sz);     } } int main() {     int arr[] = { 5,7,7,6,5,4,7,6,1,1,2,3,54654,213213,21221,0,14,1,3,4,7,12,1,2,5,52,165,46,4,654,55,3564};     int sz = sizeof(arr) / sizeof(arr[0]);     OrderTurnNumber(arr,0,sz);     for (int i = 0; i < sz; i++)         printf("%d ", arr[i]);     return 0; }

我也去问了别人,我建议是用正常的算法去做这个东西.... 

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-04-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档