Beispiel #1
0
int maxSales(BinTree* root) {
  if (root == NULL) {
    return 0;
  } else {
    int salesLeft = maxSales(root->left);
    int salesRight = maxSales(root->right);
    return fmax(fmax(root->value, salesLeft), salesRight);
  }
}
Beispiel #2
0
int main()
{
	BinTree manolo = {"Manolo", 24, NULL, NULL};
	BinTree aldrin = {"Aldrin", 27, NULL, NULL};
	BinTree ruffa = {"Ruffa", 10, NULL, NULL};
	BinTree winna = {"Winna", 48, NULL};
	BinTree tim = {"Tim", 9, &manolo, &aldrin};
	BinTree aiden = {"Aiden", 40, &ruffa, &winna};
	BinTree kurt = {"Kurt", 3, &tim, &aiden};

	// printf("%d\n", count(&kurt));
	// printf("%d\n", max(2, 3));
	// printf("%d\n", max(3, 4));
	printf("%d\n", maxSales(&kurt));
	// printf("%d\n", numLevels(&kurt));
	// printf("%d\n", totalSales(&kurt));
}
Beispiel #3
0
int main() {
  countdown(10);
  countdownEven(10);

  printf("%s %s a palindrome\n", "MADAM", isPalindrome("MADAM", strlen("MADAM")) ? "is" : "is not");

  LinkedList a = {3, NULL};
  LinkedList b = {-4, &a};
  LinkedList c = {2, &b};
  LinkedList d = {1, &c};

  printf("Sum: %d\n", sum(&d));
  printf("isAllPositive: %d\n", isAllPositive(&d));
  printf( isAllPositiveLessReadableButShorterWithALongerFunctionName(&d) ? "All positive!\n" : "Not all positive!\n");
  
  printList(&d);
  printf("\n");
  printListReverse(&d);
  printf("\n");
  //1 -> 2 -> -4 -> 3 ->
  //3 -> -4 -> 2 -> 1 -> 


  // BinTree* bt1 = NULL;
  // BinTree bt = NULL; // can't assign NULL to struct

  BinTree jean = {"Jean", 24, NULL, NULL}; 
  BinTree jeane = {"Jeane", 27, NULL, NULL}; 
  BinTree icel = {"Icel", 10, NULL, NULL}; 
  BinTree candace = {"Candace", 48, &jean, &jeane}; 
  BinTree lovely = {"Lovely", 9, &icel, NULL}; 
  BinTree honey = {"Honey", 40, &lovely, NULL}; 
  BinTree jj = {"JJ", 3, &honey, &candace}; 

  printf("Population: %d\n", pop(&jj));
  printf("Max sales: %d\n", maxSales(&jj));
  printf("Num levels: %d\n", numLevels(&jj));


  
  return 0;
}