首页 > 编程语言 > 详细

原创| 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

时间:2020-09-22 19:29:48      阅读:106      评论:0      收藏:0      [点我收藏+]
思路:
 
 2 5 8 2 8 1 1 9
 
最小的一个元素是1,最大的一个元素是9
 
用*min来指向最小的那个元素。初始化的时候,*min指向第一个元素,指向2.
 
这个用一个暂存的变量temp1来存储最小值,初始值指向第一个元素。temp的作用是可以用来不断进行值比较。
 
通过for循环遍历数组,找到最小的那个值,便记下最小值的位置(因为最小值可以有重复的,记前面那个即可)。
 
这样有temp=*min;
 
(还有一种方法的时间复杂度为O(n!));
 
用*max来指向最大的那个元素。初始化的时候,*max指向第一个元素,指向2.
 
这个用一个暂存的变量temp2来存储最大值,初始值指向第一个元素。temp2的作用是可以用来不断进行值比较。
 
通过for循环遍历数组,找到最大的那个值,便记下最大值的位置(因为最大值可以有重复的,记前面那个即可)。
 
这样有temp=*max;
 
最后便是交换函数,用来实现数组交换的。
 
将*min和a[0]交换
将*max和a[1]交换。
 
将数组输出出来。
 
 
 
本人微信:a25828119.有问题欢迎交流~

原创| 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

原文:https://www.cnblogs.com/chengxuyuanzrc/p/13714159.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!