美文网首页
我在leedcode上所刷过的题

我在leedcode上所刷过的题

作者: 凉拌姨妈好吃 | 来源:发表于2018-03-31 23:33 被阅读0次

    .

    1.题目

    Now, given a list of words, each word can be written as a concatenation of the Morse code of each letter. For example, "cab" can be written as "-.-.-....-", (which is the concatenation "-.-." + "-..." + ".-"). We'll call such a concatenation, the transformation of a word.

    题目一

    2.我的解法(Js):

            我的想法是把题目所给定数组对应的value值和key值存在map中。然后接收数组,对数组中的字符串进行遍历,将字符串都替换成给定数组类的符号。所有字符串替换完成之后再进行比较,如果该字符串之前还存在和该字符串相等的字符串,那么count就不能加1,因为之前的字符串已经加过1了。反之加1

    使用JS实现

    3.我在写这个代码时所出现的错误:

    a.一开始map的定义就出错了,要记住var usemap=new Map([[' ',' '],[' ',' ']])

    b.忘记了Array可以用push增加值,还傻傻的定义了一个变量循环赋值

    c.在flag这个状态和chatstring这个字符串改变后并没有及时改回初值

    d.js赋初值不能直接null!!!!不然会一起输出来!!!!

    4.来看一下讨论区里其他人的思路

    用数组k保存题目给定的数据,因为数据是按照a,b,c,d..排序,所以如果要找gik这个单词对应的字符,只需要遍历gik这个单词,不断地让一个字符串+=k[gik遍历得到的字母-'a']。那么怎么判断里面有一样字符的呢?用HashSet(只存储不重复对象)(c++可以使用set容器)


    2.题目


    2.我的解法:

            遍历有问题,没有好好思考楼梯问题。

            其实这题解法很简单,主要还是要思考到最后是走一步或者走两步

    3.大牛的解法:

    三、

    1.题目

    2.我的代码(超出了时间限制了)

    我出现的错误:"reference binding to null pointer of type 'value_type'"

        没有判断当输入为空时怎么处理,所以新增了一行 if(length<0) return 0

    3.经过林狗的细心教导后我修改了代码,记录下当前的最小值,当当前数组索引大于最小值时,记录下它们之前的差值,再进行对比,保留最大差值

    相关文章

      网友评论

          本文标题:我在leedcode上所刷过的题

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