iOS Learning Exchange Group: 230644538 #include <stdio.h> #define MAX 30/****-----------------------------------------*****/// Function name: createtree (int btree[], int list[], int n)//parameter: (incoming) int btree[] binary tree//(incoming) int list[] Data array//(incoming) int n Number of data//function: Build two fork tree/****-----------------------------------------*****/void createtree (int *bt, int list[], int n) {int I int level; for (i = 0; i < MAX; i++) {bt[i] = 0; } Bt[0] = list[0]; Establish two fork root node for (i = 1; i < n; i++) {level = 1;//build from First layer while (Bt[level]! = 0) {//Determine if there are any subtrees if (List[i] < Bt[level])//Establish left sub-tree level = level*2; else level = level*2+1; Establish right sub-tree} Bt[level] = List[i]; }}/********************** Test Main program ***************************/int main () {int count, I; int Btree[max]; int Nodelist[max]; printf ("Input the number of elements (n <): \ n"); scanf ("%d", &count); printf ("Input elements:\n"); for (i = 0; I < count; i++) {scanf ("%d", &nodelist[i]); } createtree (Btree, NodeList, Count); printf ("The Binary Tree is:\n"); for (i = 0; i < MAX; i++) {printf ("%d", btree[i]); } printf ("\ n"); return 0;}
5.1 Array Storage Binary tree experiment