首页 > 代码库 > 广联达北邮笔试题

广联达北邮笔试题

广联达北邮宣讲笔试题

编程题

1.链表相比于数组不是其优点的是:存储空间小。

2.一群不同年龄的人,找出最小的年龄的差值(绝对值),时间复杂度小于O(n^2)

我的思路是:用快排将年龄排序(从小到大),然后用次小年龄减去最小年龄就是最小年龄差。

3.删除单向链表的给定的结点,时间复杂度为O(1)

链表结点定义:

struct linknode{

int key;

linknode * next

}

         剑指offer有此题。

思路:用给定结点的下一节点的值覆盖给定结点的值,然后将下一节点删除。

假设给定结点为p

p->key=p->next->key;

p->next=p->next->next;

4.判断一个二叉树是不是平衡二叉树。

二叉树的定义:

struct node{

int data;

node * left;

node *right;

}

忘了啥是平衡二叉树了。。。

答案参考博客:http://blog.csdn.net/zz198808/article/details/7621275

5.判断给定的字符串符不符合给定的句法规则。

Sentence:Noun Verb

String :Sentence Conjunction Sentence

Noun:”Bird”,”Fish” etc

Verb: “Fly” etc

Conjunction:“and”,”or”,”not”

当时纠结于如何从字符串分解出单词了,没做出来。

恶心人的逻辑题就不细表了。。。反正不会做。。。

广联达北邮笔试题