数据结构公司真题

趋势科技

在这里插入图片描述
答案:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
答:树的高度

在这里插入图片描述
前缀表达式:运算符在操作数前面
后缀表达式:运算符在操作数后面
(w + x) * ( y - z)
在这里插入图片描述在这里插入图片描述

腾讯

在这里插入图片描述
性质4:在任意一棵二叉树中,若终端结点的个数为n0,度为2的结点数为n2,则n0=n2+1
证明:因为二叉树中所有结点的度数均不大于2,所以结点总数(记为n)=“0度结点数(n0)” + “1度结点数(n1)” + “2度结点数(n2)”。由此,得到等式一。
(等式一) n=n0+n1+n2
另一方面,0度结点没有孩子,1度结点有一个孩子,2度结点有两个孩子,故二叉树中孩子结点总数是:n1+2n2。此外,只有根不是任何结点的孩子。故二叉树中的结点总数又可表示为等式二。
(等式二) n=n1+2n2+1
由(等式一)和(等式二)计算得到:n0=n2+1。原命题得证!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
栈一定是顺序存储的线性结构???可以是链式存储啊
首先题目是要求选描述错误的。
A:栈空的情况下出栈属于下溢出;A正确。
B:栈可以顺序存储,也可以是链式存储的线性结构;B错误。
C:元素为0和无元素是两个不同的概念,当有n个元素为0的栈,拥有n个元素;C错误。
D:输出C时,并定有ABC进栈,然后C出栈。接下来有两种输出结果,一是B出栈,即输出C的后面输出B;而是D进栈后立即出栈,即输出C的后面输出D。所以C的后面要么是B要么是D,不可能输出A;D错误。
在这里插入图片描述

  1. 看选项最后,是10,题目给的是“查找第10个元素”,也就是说,就是从1开始的。。。。。1+(136-1)/2=68
  2. 10<68, 下次从1~67中找:1+(67-1)/2=34;
  3. 10<34, 下次从1~33中找:1+(33-1)/2=17;
  4. 10<17, 下次从1~16中找:1+(16-1)/2=8;
  5. 10>8, 下次从9~16中找:9+(16-9)/2=12;
  6. 10<12, 下次从9~11中找:9+(11-9)/2=10;
  7. 10==10 return;
  8. 在这里插入图片描述
    已知对称序列是ABCDEFG,后序序列是BDCAFGE
    后序遍历最后一个结点一定是根结点,这里是E
    在中序遍历中进行划分,ABCD-E-FG,分成左子树和右子树
    再看后序 BDCA -FG- E,A是左子树的根,根据中序ABCD得出A没有左子树。
    以此类推,得到结构
    -----E
    -A------G
    -C------F
    B-D
    先序遍历则是EACBDGF
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 把一个链表反向,递归,非递归都写一遍。 1.试编写3个函数实现   (1)建立一个双向链表   (2)插入一个节点   (3)删除一个节点 2.自己定义数据结构,写出程序:二叉树的前序遍历。 3.实现双向链表删除一个节点P,在节点P后插入一个节点,写出这两个函数。 4.下面哪种排序法对12354最快 a quick sort b.buble sort c.merge sort 5.哪种结构,平均来讲,获取一个值最快 a. binary tree b. hash table c. stack 6.一个二叉树的三种遍历方法的输出结果 7.链表按升序打印每打印完一个节点就将该节点从链表中删除 8.选择一种算法来整理出一个链接表。你为什么要选择这种方法?现在用o(n)时间来做。 9. 用一种算法在一个循环的链接表里插入一个节点,但不得穿越链接表。    10.给两个变量,如何找出一个带环单链表中是什么地方出现环的? 11.哈希表和数组的定义,区别,优缺点。 12.链接表和数组之间的区别是什么? 任选一门语言,当场定义二叉排序树数据结构,写出两个函数:初始化,删除一个节点,20分钟 13. 递归的折半查找算法[不限语言] 14. 解释一下什么是B+树,如何实现B+树的查找和插入.(用图示) 15.实现双向链表删除一个节点P,在节点P后插入一个节点,写出这两个函数。 13.排序方法比较 (intel) 排序方法 平均时间 最坏时间 辅助存储 直接插入排序 O(N2) O(N2) O(1) 起泡排序 O(N2) O(N2) O(1) 快速排序 O(Nlog2N) O(N2) O(Nlog2N) 简单选择排序 O(N2) O(N2) O(1) 堆排序 O(Nlog2N) O(Nlog2N) O(1) 归并排序 O(Nlog2N) O(Nlog2N) O(n) 基数排序 O(d(n+radix)) O(d(n+radix)) O(radix) 17.一个链表的操作,注意代码的健壮和安全性。要求: (1)增加一个元素; (2)获得头元素; (3)弹出头元素(获得值并删除)。 18.内排序算法 19.折半查找的复杂度,证明 20.sizeof()和strlen()的使用. 21.顺序存储结构的优点,散列法的思想是什么? 22.汉罗塔算法,不能递归... 23.一个链表的结点结构 struct Node { int data ; Node *next ; }; typedef struct Node Node ; (1)已知链表的头结点head,写一个函数把这个链表逆序 ( Intel) (2)已知两个链表head1 和head2 各自有序,请把它们合并成一个链表 依然有序。 (3)已知两个链表head1 和head2 各自有序,请把它们合并成一个链表 依然有序,这次要求用递归方法进行。 ( Autodesk) 24.编最优化Bubble(int *pIntArray,int L),要求:交换元素不能用临时变量,如果有序需要最优。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值