且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

我如何才能找到一个多维数组中最长的字符串?

更新时间:2022-11-11 10:22:21

  => a.flatten.max_by(安培;:大小)
= GT; #MAKKGKPRPDHRPPA​​HNPHYAHDPPPYSQQQPPLQQQNYAQQMHHGGGGGNRQHARPRPSPPSEVSDCVKYSLFLYNCIFWVSMHSS

I am trying to get the longest string from an multidimensional array, however it is not working for some reason.

This is what I have:

a = 
["MAKKGKPRPDHRPPAHNPHYAHDPPPYSQQQPPLQQQNYAQQMNRQHARPRPSPPSEVSDCVKYSLFLYNCIFWVSMHSS"],
["MHHGGGGGNRQHARPRPSPPSEVSDCVKYSLFLYNCIFWVSMHSS"], ["MTYINLGVTRTGDLMIGRHRP"],
["MRIYNRVCFQTAGCYLQNLVTTSIQPARVWTY"], ["MAACGLGRVFSAFKVDEMD"], 
["MPSGFVGKRSGFCQFCCSHI"], ["MTYSTAKEGAYPFRNFN"]]

p a.max_by{|v|v}[0]  # => "MTYSTAKEGAYPFRNFN"

Could someone please let me know what I am doing wrong?

=> a.flatten.max_by(&:size)
=> # "MAKKGKPRPDHRPPAHNPHYAHDPPPYSQQQPPLQQQNYAQQMHHGGGGGNRQHARPRPSPPSEVSDCVKYSLFLYNCIFWVSMHSS"