listorder1.c

来自「《数据结构》教材源程序,可以让你轻松的根据教材学习数据结构」· C语言 代码 · 共 24 行

C
24
字号
#define MAXSIZE 20
typedef int listarr[MAXSIZE];
void listorder(listarr list,int left, int right)
{ /*将数组段list[left..right]中的元素按中点优先的顺序输出(递归实现)*/
   int mid;
   if (left<=right)  /*数组段不为空*/
     {
       mid=(left+right)/2;  /*取中点元素的值并输出*/
       printf("%4d",list[mid]);
       listorder(list,left,mid-1); /*将中点左半部的元素按中点优先的顺序输出*/
       listorder(list,mid+1,right);/*将中点右半部的元素按中点优先的顺序输出*/
       }
  }
main()
{ listarr list;
  int n,i;
  printf("input the n value:");
  scanf("%d",&n);
  printf("\ninput the array:");
  for (i=0;i<n;++i)
     scanf("%d",&list[i]);
  printf("\n");
  listorder(list,0,n-1);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?