题目:

python hash表 python hash表的替代_字符串

代码:python代码偷奸耍滑,无脑replace:

class Solution:
    def replaceWords(self, dict: List[str], sentence: str) -> str:
             for i in range(0,len(dict)):
                      s=""+sentence
                      sentence=sentence.replace(dict[i],'1')
                      b1=s.split()
                      b2=sentence.split()
                      b3=[]
                      for j in range(0,len(b1)):
                               if b2[j][0]=='1':
                                        b3.append(dict[i])
                               else:
                                        b3.append(b1[j])
                      sentence=b3[0]
                      for j in range(1,len(b1)):
                               sentence=sentence+' '+b3[j]
             return sentence

当然,正确但超时。
强调:直接使用==吧,不用is了、

题解思路1:

相比于直接使用replace,这里自己仅仅比较从头开始的,就可以通过啦。

题解1代码:

python hash表 python hash表的替代_python hash表_02


再次折服,

1.把一个列表转化为集合,:

python hash表 python hash表的替代_字符串_03


2.字符串值当位置的分割:

python hash表 python hash表的替代_python hash表_04


3.map() 会根据提供的函数对指定序列做映射。

python hash表 python hash表的替代_字典树_05


4.join

python hash表 python hash表的替代_python hash表_06


这样实现了每次的字符串以空格分隔太妙了吧。

题解思路二:

python hash表 python hash表的替代_字典树_07


前缀树之前已经做过了,这样很容易理解如何去做。

构建一个树,每个节点包含3个要素,是否能作为结束点,是否有下一个节点,有下一个节点的话的指针。

2021, 也不算精华题,无非就是字典树懒得写了,暴力也挺好,字典树的时间也不是很优吧~