![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
牛客网编程题
牛客网编程题
Doe
这个作者很懒,什么都没留下…
展开
-
牛客算法篇———NC17、最长回文子串
描述对于一个字符串(仅包含小写英文字母),请设计一个高效算法,计算其中最长回文子串的长度。给定字符串A以及它的长度n,请返回最长回文子串的长度。示例输入:"abcab",5返回值:1输入:"abbba",5返回值:5答案5. 最长回文子串-JavaScript - 精灵W的博客 - 博客园动态规划:对于一个子串而言,如果它是回文串,并且长度大于 2,那么将它首尾的两个字母去除之后,它仍然是个回文串。例如对于示例1...原创 2021-10-07 22:35:35 · 315 阅读 · 0 评论 -
NC15———求二叉树的层序遍历
描述给定一个二叉树,返回该二叉树层序遍历的结果,(从左到右,一层一层地遍历)例如:给定的二叉树是{3,9,20,#,#,15,7},该二叉树层序遍历的结果是[[3],[9,20],[15,7]]示例1输入:{1,2}返回值:[[1],[2]]示例2输入:{1,2,3,4,#,#,5}返回值:[[1],[2,3],[4,5]]思路层序遍历利用栈,然后每一层的单独输出: while(queen.length){原创 2021-07-14 09:29:19 · 58 阅读 · 0 评论 -
NC45———实现二叉树先序,中序和后序遍历
描述分别按照二叉树先序,中序和后序打印所有的节点。示例1输入:{1,2,3}复制返回值:[[1,2,3],[2,1,3],[2,3,1]]代码/* * function TreeNode(x) { * this.val = x; * this.left = null; * this.right = null; * } *//** * * @param root TreeNode类 the root of binary tree原创 2021-07-12 21:19:19 · 258 阅读 · 0 评论 -
NC93———设计LRU缓存结构
描述设计LRU缓存结构,该结构在构造时确定大小,假设大小为K,并有如下两个功能set(key, value):将记录(key, value)插入该结构 get(key):返回key对应的value值[要求]set和get方法的时间复杂度为O(1) 某个key的set或get操作一旦发生,认为这个key的记录成了最常使用的。 当缓存的大小超过K时,移除最不经常使用的记录,即set或get最久远的。若opt=1,接下来两个整数x, y,表示set(x, y)若opt=2,接下来一个整数原创 2021-07-12 20:59:00 · 84 阅读 · 0 评论