我不知道如何解决这个问题。
返回指向 NAME_VAL 对的指针,这是排序序列中的第 n 个条目。
如果 i=1,则返回最小条目
如果 i=n,则返回最大条目
如果 n=n/2 你返回中位数条目(或关闭)
if(i < 1 || i > n) 返回 NULL;
运行时间必须是 O(log n)
有人可以为我指出解决这个问题的基本思路的正确方向吗?谢谢!
我的结构:
typedef struct name_val
{
char *name;
double value;
}NAME_VAL;
typedef struct node
{
NAME_VAL *nV;
struct node *left;
struct node *right;
}NODE;