首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找出区别

找出区别
EN

Stack Overflow用户
提问于 2022-08-08 05:45:02
回答 1查看 73关注 0票数 -1

我无法理解下面提到的两个代码之间的区别。在第二段代码中,我只对第1行和第2行进行了更改。

给出了两个字符串s和t. position.

  • Return字符串t。

  • 字符串t是通过随机洗牌字符串s生成的,然后在随机字符串s中再添加一个字母,即添加到t.

中的字母。

代码语言:javascript
复制
var findTheDifference = function(s, t) {

    s.split("").sort(); //line 1
    t.split("").sort(); //line 2
    
    for(let i=0; i<t.length; i++){
        if(t[i] != s[i])
             return t[i];
    }   
};

var findTheDifference = function(s, t) {

    s = s.split("").sort(); //line 1
    t = t.split("").sort(); //line 2
    
    for(let i=0; i<t.length; i++){
        if(t[i] != s[i])
             return t[i];
    }  
};

样本输入:

"ymbgaraibkfmvocpizdydugvalagaivdbfsfbepeyccqfepzvtpyxtbadkhmwmoswrcxnargtlswqemafandgkmydtimuzvjwxvlfwlhvkrgcsithaqlcvrihrwqkpjdhgfgreqoxzfvhjzojhghfwbvpfzectwwhexthbsndovxejsntmjihchaotbgcysfdaojkjldprwyrnischrgmtvjcorypvopfmegizfkvudubnejzfqffvgdoxohuinkyygbdzmshvyqyhsozwvlhevfepdvafgkqpkmcsikfyxczcovrmwqxxbnhfzcjjcpgzjjfateajnnvlbwhyppdleahgaypxidkpwmfqwqyofwdqgxhjaxvyrzupfwesmxbjszolgwqvfiozofncbohduqgiswuiyddmwlwubetyaummenkdfptjczxemryuotrrymrfdxtrebpbjtpnuhsbnovhectpjhfhahbqrfbyxggobsweefcwxpqsspyssrmdhuelkkvyjxswjwofngpwfxvknkjviiavorwyfzlnktmfwxkvwkrwdcxjfzikdyswsuxegmhtnxjraqrdchaauazfhtklxsksbhwgjphgbasfnlwqwukprgvihntsyymdrfovaszjywuqygpvjtvlsvvqbvzsmgweiayhlubnbsitvfxawhfmfiatxvqrcwjshvovxknnxnyyfexqycrlyksderlqarqhkxyaqwlwoqcribumrqjtelhwdvaiysgjlvksrfvjlcaiwrirtkkxbwgicyhvakxgdjwnwmubkiazdjkfmotglclqndqjxethoutvjchjbkoasnnfbgrnycucfpeovruguzumgmgddqwjgdvaujhyqsqtoexmnfuluaqbxoofvotvfoiexbnprrxptchmlctzgqtkivsilwgwgvpidpvasurraqfkcmxhdapjrlrnkbklwkrvoaziznlpor“

"qhxepbshlrhoecdaodgpousbzfcqjxulatciapuftffahhlmxbufgjuxstfjvljybfxnenlacmjqoymvamphpxnolwijwcecgwbcjhgdybfffwoygikvoecdggplfohemfypxfsvdrseyhmvkoovxhdvoavsqqbrsqrkqhbtmgwaurgisloqjixfwfvwtszcxwktkwesaxsmhsvlitegrlzkvfqoiiwxbzskzoewbkxtphapavbyvhzvgrrfriddnsrftfowhdanvhjvurhljmpxvpddxmzfgwwpkjrfgqptrmumoemhfpojnxzwlrxkcafvbhlwrapubhveattfifsmiounhqusvhywnxhwrgamgnesxmzliyzisqrwvkiyderyotxhwspqrrkeczjysfujvovsfcfouykcqyjoobfdgnlswfzjmyucaxuaslzwfnetekymrwbvponiaojdqnbmboldvvitamntwnyaeppjaohwkrisrlrgwcjqqgxeqerjrbapfzurcwxhcwzugcgnirkkrxdthtbmdqgvqxilllrsbwjhwqszrjtzyetwubdrlyakzxcveufvhqugyawvkivwonvmrgnchkzdysngqdibhkyboyftxcvvjoggecjsajbuqkjjxfvynrjsnvtfvgpgveycxidhhfauvjovmnbqgoxsafknluyimkczykwdgvqwlvvgdmufxdypwnajkncoynqticfetcdafvtqszuwfmrdggifokwmkgzuxnhncmnsstffqpqbplypapctctfhqpihavligbrutxmmygiyaklqtakdidvnvrjfteazeqmbgklrgrorudayokxptswwkcircwuhcavhdparjfkjypkyxhbgwxbkvpvrtzjaetahmxevmkhdfyidhrdeejapfbafwmdqjqszwnwzgclitdhlnkaiyldwkwwzvhyorgbysyjbxsspnjdewjxbhpsvj“

代码语言:javascript
复制
Output : "t"
EN

回答 1

Stack Overflow用户

发布于 2022-08-08 06:01:16

字符串是不可变的,这意味着您不能更改它们。如果您想要更改它们,那么需要将它们赋值给一个新变量。

在这个例子中,我们使用s和t的值并将它们拆分,而不是对它们进行排序,并将它们赋值给s和t以对它们执行一些操作。

代码语言:javascript
复制
const s = 'psakdjhflksadjhfalskdjhflaskjhdf';
const t = 'lsdfl;sakdjhflsdkjfl';

const findTheDifference = function (s, t) {
  s = s.split('').sort(); //line 1
  t = t.split('').sort(); //line 2
  console.log(s);
  console.log(t);

  for (let i = 0; i < t.length; i++) {
    if (t[i] != s[i]) return t[i];
  }
};

在这里,我们使用s和t,拆分并排序它们,然后使用原始字符串来进行逻辑处理。

代码语言:javascript
复制
    const s = 'psakdjhflksadjhfalskdjhflaskjhdf';
    const t = 'lsdfl;sakdjhflsdkjfl';

    const findTheDifference = function (s, t) {
      s.split('').sort(); //line 1
      t.split('').sort(); //line 2
      console.log(s);
      console.log(t);

      for (let i = 0; i < t.length; i++) {
        if (t[i] != s[i]) return t[i];
      }
    };```
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73273341

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档