算法题笔记

2020-04-01  本文已影响0人  我是电饭煲

算法面试通关40讲教程

https://pan.baidu.com/s/1lygZGiVw8I84J0dlEjSpyw#list/path=%2Fsharelink1976671762-260313521463776%2F%E7%AE%97%E6%B3%95%E9%9D%A2%E8%AF%95%E9%80%9A%E5%85%B340%E8%AE%B2%2F%E7%90%86%E8%AE%BA%E8%AE%B2%E8%A7%A3%2B%E9%9D%A2%E8%AF%95%E9%A2%98%E5%AE%9E%E6%88%98&parentPath=%2Fsharelink1976671762-260313521463776

《链表》

Reverse Linked List翻转链表

image.png

Swap Nodes in Pairs链表交换相邻元素

https://www.cxyxiaowu.com/2289.html

TIM图片20200111220341.jpg
image.png

Linked List Cycle链表是否有环

image.png
image.png

栈、队列

Valid Parentheses判断括号字符串是否有效

image.png
image.png
image.png

Implement Queue using Stacks用栈实现队列

image.png

Implement Stack using Queues用队列实现栈

优先队列

image.png

Kth Largest Element in a Stream在流式数据中查找第k大的数(优先队列)

// 有k个元素的最小优先队列,第一个元素相当于k个元素里的第k大的数
// 1.保证优先队列个数为k
// 2.新数据 < 第一个数据,不如队列,反之,入队,并通过优先队列的原理,第k大的数会成为第一个元素。
image.png
image.png

Maximum Length of a Concatenated String with Unique Characters 返回滑动窗口中的最大值(优先队列)

1.最大堆 NlogN
2.双端队列 N*1

映射(map)及集合(set)

1.hashtab(HashMap)
2.二叉树(TreeMap)

Valid Anagram(异位词)

1.快排(NlogN)
2.HashMap(2N)
3.26数组。s1对于下标+1,s2对于下标-1。num的值都为0,true,有一个不为0,false。(2N)

https://m.aliyun.com/yunqi/articles/26070

Two Sum

1.冒泡(N2)
2.hashMap,加一次遍历。(N)注意元素可重复。

3Sum

树、二叉树、二叉搜索树、图

image.png

Validate Binary Search Tree(验证二叉搜索树)

1.中序遍历
2.递归

Lowest Common Ancestor of a Binary Search Tree(二叉搜索树找公共祖先节点)

递归

Lowest Common Ancestor of a Binary Tree(二叉树找公共祖先节点)

递归

二叉树遍历

递归、分治

pow(x, n)(数值的整数次方)

1.暴力破解(N)
2.递归二分法(logN)
上一篇下一篇

猜你喜欢

热点阅读