
leetcode
啊罗罗
这个作者很懒,什么都没留下…
展开
-
leetcode 16.26 计算器 C++解法
这个代码是参考了评论区的题解,一变读取一遍计算,使用prev_op来实现减号的变化。 比之前的中缀转后缀再计算要快得多 这个是之前的版本https://blog.youkuaiyun.com/dyyzlzc/article/details/104337379 class Solution { public: int calculate(string s) { s+="#...原创 2020-02-26 17:23:04 · 190 阅读 · 0 评论 -
C++ leetcode 字符串乘法
参考于这篇博客https://www.cnblogs.com/wmx24/p/9064134.html 相较于我之前的版本https://blog.youkuaiyun.com/dyyzlzc/article/details/103239509,这个非常简洁,确实是算法的精髓,我之前的那个有点拖沓,虽然原理是对的,并且这个复杂度只有O(n*m) #include<iostream> #...原创 2020-02-25 23:54:11 · 225 阅读 · 0 评论 -
红黑树插入的js实现
保存成html打开控制台就可以看到 这个是在我掌握了C++的红黑树以后重新复习的一个小代码 <script> var rbtree={ node:function(key,val){ //新建一个节点 var node=new Object(); node.color="red" n...原创 2020-02-03 00:04:26 · 224 阅读 · 0 评论 -
C++ 实现的红黑树的插入
正在学习红黑树,目前把插入学完理解,做个笔记 //main.cpp //尝试自己写红黑树 #include<iostream> #include"rbtree-class.hpp" using namespace std; int main(){ RBTree<string> tree; /*int key=0; string val; ...原创 2020-02-02 18:08:36 · 232 阅读 · 0 评论 -
JS实现算法——strStr,字符串查找算法
F12打开控制台查看运行时间 indexOf是js原生的二进制代码,速度比这两个算法都要快,strStr是双指针,kmp是Kmp算法 <script src="https://cdn.jsdelivr.net/npm/vue"></script> <link rel="stylesheet" href="https://cdnjs.loli.net/ajax/...原创 2020-01-31 13:27:57 · 436 阅读 · 0 评论 -
Leetcode 142&141 - 环形链表2 and 环形链表1
这个题目是在141-环形链表的基础上发展而来的。 141环形链表: 速度比较快的就是双指针,快慢,如果有环就会重合。 速度比较慢的就是用C++的unordered_map来做 142环形链表2,要求找出相交的那个点。 方法1:unordered_map的方法,储存每个节点,当发现map中已经有这个节点的是就就返回true【有相交】 方法2:官方题解的第二个方法,速度和空间都挺小...原创 2019-12-04 21:42:55 · 117 阅读 · 0 评论 -
leetcode - 104.二叉树最大深度 C++
这是题目 说实话,递归很好写 但是感觉速度太慢了 其实利用queue<TreeNode*>也可以写,其实就是模拟BFS的过程 这个老哥的题解非常棒,我参考了他的,顺便学习了 还有另一种是使用stack来模拟DFS,看了大家的题解基本都是使用自定义的数据结构来保存每个节点的深度的,不保存的感觉做不了。。。 ...原创 2019-11-28 19:40:16 · 106 阅读 · 0 评论 -
LeetCode - 43:字符串相乘 C++解法
实际上就是让你写一个大数乘法 大数乘法基本都用模拟竖式了,就是看各种优化 模拟竖式可以先全部计算,然后最后统一进位【这里当然也可以优化,减少一点复杂度】 过程是这样的 先不进位,就全部加起来 然后总的结果是 然后从最后一位【56】,往前判断,如果大于9,就往前进位【121+=56/10,本位=56%10=6】 126大于9,持续这个操作 如果已经到beg...原创 2019-11-25 16:04:59 · 291 阅读 · 0 评论