数据结构与算法

 

1 树的镜像

2 求第k大数

3 找链表公共节点

4 判断一个字符串的正序序列有多少个

5 不使用java封装的api,实现一个trim()函数功能例如: "_ _ _abcd _ _ _ _ddd _ _ _" 下划线代表空格,去掉字符串两边的空格,同时不能改变字符床引用或者新创一个引用。

6 判断s2是不是s1的子串

7 排序算法里稳定性是什么

8 快排是稳定的吗?为什么

9 双向链表插入元素

10 手写一个快排

1.链表与数组的区别

2.链表分段反转

3.合并k个有序数组

1.Leetcode 121题 买卖股票的最佳时机

二叉树最近公共祖先。

3、给A、B两个IP段,再给一个C,判断C是否在这个IP范围内,最开始想的字符串a.b.c.d split(".")分段比较,面试官强行要用bit,不太熟悉的我又跪

12.编程:树的BFS遍历

13.编程:链表对折(输入1-2-3-4-....-n, 输出1-n-2-n-1-3-....)

编程:N个有序数组求交集 (一点小问题,让我回去再想下)

算法判断是否是BST

Stack与ArrayList的区别

找到数据流的中位数

手撕二叉树层次遍历

手撕全排列

手撕排序数组指定重复元素的起始索引和终止索引

代码:两个链表相加。{1->2->3} + {1->2->3} = 246.

代码:two sum。

手写算法:判断一个数是否为二叉树的路径节点值之和

讲解算法:一个连连看小游戏(二维数组存储),如何判断两个点可以消去?时间复杂度?连线最多只有两个拐点,怎么判断?

用栈模拟队列

我只想到了入站o1出栈on的算法,面试官要想更快的,没想出来,他说换第二题

第二题手撕快排 写出来了 但跑不通 忘写了一个循环终止条件 补上了 还没跑出结果 就说就到这里吧

合并两个有序链表。递归和非递归的实现

口述单链表快排

手撕算法:删除字符串中出现最多次数的字符(多个则删除第一个)

求二叉树两节点的最长距离,搞了30分钟。。。

求前序遍历的递归,非递归算法

算法题:求一个数组中连续子数组的最大值,   如  【3,-4,1,2】,最大值为3,子数组为【1,2】

算法:实现一个缓存队列 ,二叉树的镜像

算法题: (1)树的节点最大距离(2)区间覆盖 例 [1 3] [2 5] [3 6]能否覆盖[2 6]

删除链表重复节点

二叉树的序列化与反序列化

链表求环

给定一个二叉树,原地将它展开为链表。leetcode原题。

给定一棵二叉树,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。

 题目一:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。

当时我真的是很慌张!脑子里想的是我会做我会做!可是却是一片空白。深呼吸一下。用递归做了出来。 又问我除了递归怎么做?“那就遍历,每次都比较就行”

“那为什么不用遍历用递归呢?”“递归写起来简单啊!

1. 一个数组,除了某个数字只出现一次,其它都只出现两次,做法说了 HashMap 记录和异或操作,然后让我手写了异或的做法

2. 二叉树的子结构,应该是 leetcode 的题,判断树 B 是否是树 A 的子树,这个我就写了个递归

 

给 N 个 32 位无符号整数,有重复,找出重复率最高的前 K 条,我说 HashMap 存,结果不让,要用最原始的,我扯半天,不行,然后就让我分析时间复杂度,我乱说

 

 

 

 

 
 
·排序算法
    七种基础算法一定要熟练到手写,各自的特点和复杂度
    随机快排和经典快排,复杂度
    给一个序列,手写快排一次后的序列
·队列和栈
    队列和栈区别,使用场景
    数组实现队列
·找到100亿url中最多出现的k个(!这个题很多公司都问到了,应该是哈希+分文件+堆排序,自己查吧
·如何把取出的数据树形结构化
·介绍红黑树,和AVL树的区别
·一致性哈希,怎么解决哈希冲突
·数组和链表
    数组和链表的区别以及优缺点
    列表去重
    两个有序链表合并(!!出现过几次)
    找出两个数组相等的数,不能用其他数据结构
    一个数组中只有两个数出现一次,其他的都出现两次,求这两个数
    给定一个数字和数组,找出数组中两个相加等于这个数字的两个数,不能用数据结构
    找两个链表的交叉节点
·判断树1是树2的子树
·二叉树
    层级遍历
    后序遍历
    72个节点,问非叶子节点数量
    求任意两节点距离,时间复杂度
    判断是否是平衡二叉树,如何调整平衡二叉树
·矩阵找最短路径,直接画出来
·手写LRU
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值