算法

作者: Q罗 | 来源:发表于2019-02-16 13:19 被阅读0次

    leetcode中文

    归并算法https://www.cnblogs.com/chengxiao/p/6194356.html

    最大堆的排序,插入,删除https://blog.csdn.net/sinat_27026243/article/details/77507745

    LeetCode 23 Merge k Sorted Lists(合并k个有序链表)

    Java单链表反转

    去除已排序数组中的重复元素

    把一个字符串转成一个整数

    LeetCode 两数相加

    生产者消费者

    判断单链表是否成环算法

    Java实现十进制数转十六进制数

    十六进制转换为十进制代码

    Java无锁堆栈详解-非阻塞线性安全栈

    背包问题

    Java实现N个字母的全排列

    Java数据结构和算法(十一)——红黑树

    算法-数组中是否存在两数之和等于x?

    给定数组,从数组中取出n个不复用的数的和为sum

    顺时针打印矩阵

    LeetCode 是一个不错的地方。如果你能完成其中 50% 的题,那么你基本上可以想面哪里就面哪里了。这里,你要知道,一些面试官也是新手,他们也是从网上找一些算法题来考你。所以,你不用太害怕算法题,都是有套路的。比如:

    如果是数据排序方面的题,那基本上是和二分查找有关系的。

    如果是在一个无序数组上的搜索或者统计,基本上来说需要动用 O(1) 时间复杂度的 hash 数据结构。

    在一堆无序的数据中找 top n 的算法,基本上来说,就是使用最大堆或是最小堆的数据结构。

    如果是穷举答案相关的题(如八皇后、二叉树等),基本上来说,需要使用深度优先、广度优先或是回溯等递归的思路。

    动态规划要重点准备一下,这样的题很多,如最大和子数组、买卖股票、背包问题、爬楼梯、改字符……这里有一个Top 20 的动态规划题的列表

    一些经典的数据结构算法也要看一下,比如,二叉树、链表和数组上的经典算法,LRU 算法,Trie 树,字符串子串匹配,回文等,这些常见的题都是经常会被考到的。

    基本上来说,算法题主要是考察应聘者是否是计算机专业出身的,对于基本的数据结构和算法有没有相应的认识。你做得多了,就是能感觉得到其中的套路和方法的。所以,本质来说,还是要多练多做

    相关文章

      网友评论

          本文标题:算法

          本文链接:https://www.haomeiwen.com/subject/csevuttx.html