雅虎三道面试题
34、编程实现:把十进制数(long 型)分别以二进制和十六进制形式输出,不能使用 printf 系列
35、编程实现:找出两个字符串中最大公共子字符串,如"abccade","dgcadde"的最大子串为"cad"
36、有双向循环链表结点定义为:
struct node
{
int data;
struct node *front,*next;
};
有两个双向循环链表 A,B,知道其头指针为:pHeadA,pHeadB,请写一函数将两链表中
data 值相同的结点删除。
解答:
34、编程实现:把十进制数(long 型)分别以二进制和十六进制形式输出,不能使用 printf 系列
35、编程实现:找出两个字符串中最大公共子字符串,如"abccade","dgcadde"的最大子串为"cad"
36、有双向循环链表结点定义为:
struct node
{
int data;
struct node *front,*next;
};
有两个双向循环链表 A,B,知道其头指针为:pHeadA,pHeadB,请写一函数将两链表中
data 值相同的结点删除。
用两个向量A_vec、B_vec分别存储链表A、B的元素值,将A_vec、B_vec排序,
用类似归并排序的方法把A_vec、B_vec中值相同的元素放到向量common_vec中。
分别遍历链表A、B,用二分查找法查看每个节点元素是否在common_vec中。