【数据结构】-线性表-顺序表 熟练度max=5(用一个变量实现min和循环变量i的功能)

前端之家收集整理的这篇文章主要介绍了【数据结构】-线性表-顺序表 熟练度max=5(用一个变量实现min和循环变量i的功能)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

int型数组长度小于9,存的数字也小于等于9,只能用另外一个变量i,求出顺序表中的最小值

TIPS:以前的做法是,i作为数组的循环变量扫一遍数组,再定义一个Min作为最小值变量存储。

Good idea:用i的个位存储min最小值,十位当做循环变量(此方法只适用于特定题型,因为数组长度和存储的数都是小于9的1位数长度)

  1. #include<stdio.h>
  2. #define maxsize 50
  3. /*用i的个位存储最小值,i十位上的数当做循环变量找第N个数*/
  4. void findmin(int L[],int &i)
  5. {
  6. i=L[i/10];
  7. while(i/10<=9)
  8. {
  9. if(i%10>L[i/10])//更换个位
  10. {
  11. i=i-i%10;
  12. i=i+L[i/10];
  13. }
  14. i=i+10;//十位增加1 循环变量+1
  15. }
  16. i=i%10;
  17. }
  18. int main (void)
  19. {
  20. int L[9]={4,2,3,1,5,6,7,8,9};
  21. int i;
  22. findmin(L,i);
  23. printf("%d\n",i);
  24. return 0;
  25. }

猜你在找的数据结构相关文章