示例#1
0
TreeNode * Tree_insert(TreeNode * node, int value)
{
    if(node == NULL)
	return TreeNode_create(value);
    if(value < node -> value)
	node -> left = Tree_insert(node -> left, value);
    if(value > node -> value)
	node -> right = Tree_insert(node -> right, value);
    // If they're equal, then we have nothing to do...
    return node;
}
示例#2
0
//Function takes frequencies from lists and creates list nodes 
ListNode * ListNode_build(Node * freqList)
{
  ListNode * head = NULL;
  while(freqList != NULL)
    {
      TreeNode * tn = TreeNode_create(freqList -> char_val, freqList -> freq);
      ListNode * wn = ListNode_create(tn);
      head = ListNode_insert(head, wn);
      freqList = freqList -> next;
    }
  return head;
}