void printSpiral(struct node *root,int level, bool ltr){ if (root == NULL) return; if (level == 1) printf("%d ", root->key ); else if (level > 1){ if (ltr){ printSpiral(root->left, level-1, ltr); printSpiral(root->right, level-1, ltr); } else{ printSpiral(root->right, level-1, ltr); printSpiral(root->left, level-1, ltr); } } }
void printSpiralUtil(struct node *root){ int h = height(root); bool ltr = false; for (int i = 1; i <= h; i++){ printSpiral(root, i, ltr); ltr = !ltr; } }
int main(void) { printf("Enter the spiral number:"); scanf("%d",&n); x=0; y=0; storeNum(n); printSpiral(); return 0; }
int main() { /* Enter your code here. Read input from STDIN. Print output to STDOUT */ int array[6][6]; int i,j; int maxSum = INT_MIN; int sum = 0; for (i = 0; i < 6; i++) { for (j = 0; j < 6; j++) { array[j][i] = (i + 1) * (j + 1); } } printSpiral(array); }
int main(int argc , char *argv[]) { int **matrix = NULL , size, x, y; if(argc < 2) { printf("Enter the size of matrix: "); scanf("%d",&size); } else { size = atoi(argv[1]); } if(size<=0) { printf("The size entered is out of range.\n"); goto failure; } if((matrix = (int**) malloc(size * sizeof(int*)))==NULL) { perror(__FILE__ ": Allocating memory to 'matrix' "); goto failure; } matrix[0] = NULL; if((matrix[0] = (int*) malloc(size * size * sizeof(int)))==NULL) { perror(__FILE__ ": Allocating memory to 'matrix' "); goto failure; } for(x = 1;x < size ; x++) matrix[x] = matrix[x-1] + size; for(x = 0;x < size ; x++) for (y=0; y<size ;y++) matrix[x][y] = y + size * x; printf("\nMatrix is :\n"); printNormal(matrix, size); printf("\nSpiral form is :\n"); printSpiral(matrix, size); printf("\nHelical form is :\n"); printHelical(matrix, size); free(*matrix); free(matrix); return 0; failure: free(*matrix); free(matrix); return 1; }