热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

LeetCode小算法记录(十八)拼写单词

给你一份『词汇表』(字符串数组)words和一张『字母表』(字符串)chars。假如你可以用chars中的『字母』

 

给你一份『词汇表』(字符串数组) words 和一张『字母表』(字符串) chars。

假如你可以用 chars 中的『字母』(字符)拼写出 words 中的某个『单词』(字符串),那么我们就认为你掌握了这个单词。

注意:每次拼写时,chars 中的每个字母都只能用一次。

返回词汇表 words 中你掌握的所有单词的 长度之和。

 

示例 1:

输入:words = ["cat","bt","hat","tree"], chars = "atach"
输出:6
解释: 
可以形成字符串 "cat" 和 "hat",所以答案是 3 + 3 = 6。
示例 2:

输入:words = ["hello","world","leetcode"], chars = "welldonehoneyr"
输出:10
解释:
可以形成字符串 "hello" 和 "world",所以答案是 5 + 5 = 10。
 

提示:

1 <&#61; words.length <&#61; 1000
1 <&#61; words[i].length, chars.length <&#61; 100
所有字符串中都仅包含小写英文字母

来源&#xff1a;力扣&#xff08;LeetCode&#xff09;
链接&#xff1a;https://leetcode-cn.com/problems/find-words-that-can-be-formed-by-characters
著作权归领扣网络所有。商业转载请联系官方授权&#xff0c;非商业转载请注明出处。

package leetCodeTest;import java.util.*;public class 拼写单词 {public static void main(String[] args) {String words[] &#61; new String[]{"jdimdfzbygjgdrsisgblztowvwzewvrwuizaihnctoonlykrbzncqvbzjahxvyswdzcbwaqliiyzbddtsxrwb","ybdhccgznflezzvifoshbatwedohwwhyajylprerarbsjcll","febacfxkrwnkyoyhykzbfuueohtkvqjkrmclmiinmpwhumaummpxjqmvqnvlwkmiizewfnqnmjqmnxacrhgxodyglvzyyii","tcymwrytgfnbggzqptaqwzpkjhleisuwsfzhna","rdvuvrrqerihadnurdfkzfiwtodnzcwvrmuwkyjhgkdjtnuwlclnhttidukyhfdzozix","mjoryzsbvkqlmtmcmsjljloabfaliecpmmiumq","iwzpczbknmqrankiypxjxthlzsvhchpqv","dqpgxyspa","igsvidvyonqyprvkoaphuvqaxcceefckypojgfdiyubagihkztnhindjcdpolt","iamvwzvdbfonuurfdzcnvohqrpyxgmjvbyiyovvccsilkblgpojmwvhdsewldgzvdlnecfudjjkmgmil","lbtjpakidwtavvtllcpekgcmqigmrfkvfjyzbxlpxtnklqrfoasnocjnlhzafcjqdjqgmuardsifyrlkvrndat","tfqdhgvduounzgbdnipofenkqzqrlntcppwkk","dwtuwpqugxvkjnhxvpxsdxyeurkldhxnpmicxmntiokhcclptbbbamzcrwachvzi","pdnmdakvxnwdmibwqclesycgomztyowtjskvwiwuaumwubrmkli","sxabmaciwtbbtwwawfhqisthjqxsxslsptcxqgsrzxiirxmzzmoulqmwzwatkrjqgpelkenulstuxwzjno","enhtapuuyildahjyryubmjqdhbtfhjzhwppqbzriytu","momfgjhyxzpsp","hhdyxizwufxjewqvbforsauqgexpqgrhbmycwcaxbwldljuhclpyfawbhypinsfjepgded","cgowwwhvlaziuptfsxqygxxnqxbregcwaodyklkkywpdtofrupmeeaeoemmpdwltdzbvebuzfumfdbdqu","xspywgpzetvfdzeyterumsweldzsdarwshssaxlfgqqlckcyeealjqdfkjdncoivvgkmcvaod","ubuubimfvxvplgikclwilovjdkns","luzrzwfwzlunkwlvpjqpwckboxhgufsjlpmklxxtiuvlvaydkdvqumhiospabiemygntpfotocufttzzewkbxf","mqqktykhjxtebccvpwttybgvkkxndvxfagdnjmbezlmdgw","opcobbidwttpeisekgmowtgcozeinvfliqbkbrtkvwxdobavjyrknsadjijwybtbayfytxeotfp","c","cefqqjft","ijavryhszfeevxvrcubkvpobxajzfjhnyffkdnucigmisvalwfngwahy","pzfkcxeehzytxrtbdqqcoaccnqiynsjypfrcablnznvmthga","tlekyalvnyxsvr","jsahgkicszfcheyqafvflufycicegxclqpbmvmakjbhtuwhcxerxwspgzsrubfqblbhavlwfhx","tvzrvrsnjetkoxbliawcvzzakpmhhvnjubczcpgobuqjqffsrdxtxjarzgsuryajuatcyfbroginvjhlauzbrkhssf","dqbrdlmkhkrdzecilmfuavrphuxbqjo","pmdpypebaobezmcfazewjbabjqjvrefyravwrvneyfpesbwnbbymuvovjvqgfwmzcsweifbpkuzicpjsj","wfobqlvkmehlrh","soormzqclvrrhftinorqqtfprxqufqsadalczqgbdnirkohqvzucsuunzjvbcfrryzztgy","lfpvzygoenywdaddtsnrtmdhqnrkuyydwbwmzbwxzmoxwxvyttomlqdsekhyoaltxjhdtggwxrueelgh","sikbegcpidcsnbierikpueovdqaxzis","bchfnjcxqkfavrpotyghvhdzfsnigpgeuen","igcpbhexbrhqgvzbjuvgehqrntbdfluouysupmtykobvkxzhumwxtntmbnyditvjmgoqtbiabkzfx","xlgxysycbrskihoxiolefjhgdluugsuvvlhxlbqxzcqgqoxrmhmrylpfbarrplqgpvep","oivjponqitutsacujnlmwotbeinwfygnzdzqet","yktuffealtkznzvccxuzejpruspfldidkheondsmdbgwrabkmwgtbguayqhyiynfjfqgbpxoizlhottxeqbauj","sxghynxeletecuqbafmqmlmiwlaenuujfipfkeylcyfjxkznpkc","gxekcfwgn","zitnbxgfpnzdoaahksuajugypfdlzwzadmksgtuqoevnqjkwoybabozgovuzlazwlopcuofwnqpkcpyupnh","oydlvwonusmqypnlpwhdakzdoft","kphotdvwvjypd","cdcwreimmvstaytgnlwrdzumkilseqrorlsgzmmogjixszokypjalqmexhjesknsnpgjowypsno","bbfbbepyutonbnmtbmmdrgxnhoifxluendcayelykgoglnrucegkhoczbajaobdggmusdbdllz","tmelbseagubuvjjvpzkyvbxcyxzoxjvhcqwmesdwi","twbedagexfuyyghuqxgwxmtbckchmiknghoaswufihzcmcdkyiqphjwpgpqsavoiiejfoqoucmvcahxmshu","aqnipfzpclcsyuecagdfho","cfcigrykqaeclkckntqkioexxvzvqfyirgqiwsbamtigxewdgpbhxsrwiofxzakvofqzbznbkfpfqpnns","uoyzgkluftocnmbdrpyrmaywyyevbfcebzfxqljgigcgfmoeznqpkbmiwmziqlmdealiknlfzdwbadyjunth","pniwsxvfxlsfhkhijuwcdvzahgzjmxdjpggcmynlfeitrggpgfudhfsswqaxapmkalrmiikrdcqyovqqyiasc","hjoff","zchyafrvstjxrpcrjtxrzqtgemtnbioizjvrsbmmwsqfcqtovk","rqopixeyjdtwekhdilymtmbvpllrbcfkfojwyzgvhlhxvflywzqiiqlnwooudmwjtfikdgecxsbwxnmmyaxkqyxbqsgn","jrjjoqkpqfjslcklltztyhkmrqmlmvjczidsswyhmyowxuunogxomhxtireakdfheffjaarcmonvxxuhvlnpujenrvjpsdrngsif","oluqeooumhfdizvbmzzxznccypdfqeibvhhbbknqcvdryuiqzmheivglczcxcneypm","odiyjnibfvnmojenjmtnawnnsatslheoqliyqtsmrxojxlsqep","xodhotsxujcannmgvmszwnpvlyxrvfntk","pal","pfuaarkhepsjjtljpdhne","cmravobrplecnohwhfcxbgsmkqkqjmdrpz","rhwlfbsjnoileeuatpwpzxsqssfxbakasvvhrnfvsnji","cprpqsoavnarqcyjhuxeeapjwkbrignbhgkufpdbentazdgfrjksrmbvcbwypcrh","ouxsbfsvuihlhjcsiccibxvxtpwuzhrthhotbinvclelxhujtxqnpzoylzatzgdvawmfjwychqeopcrdjnejdtfkdign","zhoel","jwcdwcwlljltoiepktkflngdsqeagqwowkbopjzwbruhzntusrixinwvf","amn","zpcniceupkondvpyjbckasmevmoxquumalzrnhpxskxugik","cvefdfpkcctzpipaodrygoaoesgvihhhthygs","bkohexejlvylwkrykmmcgcf","olpytsjqlkdpwi","qsidlbvlccnjtyrupfxprlwhcynoyxlbrxjojkiqrsawbaumnzkdkzchommc","ixnpbwnjtpqczoybczviqfbjtuxjdibzgispvxdnjppranzldirjcxut","zlzvegbitlzahbmkectimwpbaletlxpcotygzvwridoiswxiuawtz","fhptimdesuoqzjiblcwnhhbaxptzraksykvfpunxfufrwcmvqnwjocoiy","aiyorgqnkvdopapcjpenkymhnynpkzyntylozbydnpibdrpbvcutpxudrcsizoyk","nmuyeikwomlcripugwjypkfvbvizvrmndhsacmdocjjdhtnqvuxmgrcfeczuxsa","geulhswpnmyweuswggltxsguxnnvecovqxvteiuadxgdksmjtitwcpzmbxicwvclkndttsduxb","tbdazbskpejjkquorhfdafdvlgglefjhqguriqaefpvhcqscfhtvkimqvjzxtaf","ldnnyerfedgsffdhpbmbwuubrzsjibafxqccryuljvusadrlfxqw","meylutslakssulbpvfonrfmvugblinwzrfgopxafnwwdcuufjuaimxrbheehjndxbiohskmvjrmpcewvvvrbaqbkfffgbb","ygjmeswiarqiwkpuzjsfnbabtvgapaoazzkuafcpuuavzmvvhcnwedpgbizznkygooedxjggbdkrgkcyaautpvwwnvlfwikyl","mjgnewabmklmzwazyhcdoyqowpgrdcnuzwoha","nljceveqjwgwmylmbgkawzjdvueoglyxdbpdyqpgwgtmixlkxphtltijcm","maunpmlrxvreydzpzllevzlxpbkeeyrsskuhtklrnmpytaugdnuvgotmptgprsfcrcenxg","wxqdzhmffyesnlbweaipjgjojsvvfmyyrsxjuqgyseuojmsemhgxalbbdiepwbizkf","ricbkdxnkujtlgnuzcx","gttdwdoclpkcejljedytqilnrpgsphfetbxztwihmhhspvyfdtbavl","srmlsxsnohyy","lpg","qpmfbycwecpgnthstqwcdwrfxlykjteonfqvgqfxgyjmnqfh","guojktcpspmbtsfucyze","uhkpgnmkewkhymqyfzxbb","qifzafbdvmjgfmzdotznlbzsllakihgzdpmwliwmmyoyovofyhxupehqjryccvzsejvnfebbyaxtwji","xifotcwgywruiymsgmkamaaqnawvooilhqflxptbiewtzcufqvlldsxapunlbbzurwlegvspxhkjnivmeuxu","ewpkblzobahkxvmaorqxotmlszkjlnbbqhgfeoymxntpsilzzmgknzkpgwanlajbagyxdaxvgg","xuxovygmkcyukmtsfwquiw","otvowenq","thfd","upypegljhttngfmnrwoqunnysvaauywjppaqlqayfcpajnirjgwjmaeyfpkexyfhdztctsctgfyoyi","pypgyhubkosgpcsiucjvocobhfiayxjydpjakwpduaybk","zskfzaqcegxmcxjyyraaaskmurewhpdgeccdiqdruevkipfynevvgdwpmevxolczrssveyf","qazabogdtspviktvigfumcliotxzlfgqdmnwnejdyuiaxdrhjpzpodjmk","qozbqbokeous","gwlvoonxjrhvzyqmnlwfykqex","uaumnvenxonkofoquxkbevxhinefttwiymaeecwzlknmzljzcldmmpekrnfdql","xzrghwbgmljjbboonroxerqkbuygiouaylhkdauoagnizfndqzabdbycwa","wrmcoohqyiwguwxntxlaxlrcambhvughnujvqxtvxuiyvvbgdsqukkdrprcxk","kajvhekqzmmolchwsnhwsotawzndwpoxxcphjxvjhwyqhzffyilcvwin","osnjdwvjwtqplvovigvmkkuvzvyrnqbfpliyhvtbquiyucvfxzrvupjsaxisiqvdvjuavclfmbeddvype","aa","hzvczfzpteogbzckschfxooyybkkyodaoncwlfjrrozjedbniwhmrxbxgvsknpjtntia","mnsplhfonlxqrfaoiqbroqrtvjdurciceuyazjslbxkznbjsaaiaiumshqmcdjrzkzkxskoiacnlwuumchanvp","y","llusbfpxolpcuxqlxsxusxljtvzoaukhebnimpaczhdgtlpdzmmxvqi","cxxpgjxrfajufcyljmtomctdloifssgmqpdxnvnojtbczsunjirzmpavidwgvcrwioubusmrprda","elyrktioorsgpmdogctdzoyumidyhkrcxjpsnqcjzqacpzsockdmpbobd","cwklazpkfcycsdfjmjryxlikfpcjnjvjwckghqzhgcyhrfbfetmbakpnzjuvgmfngqluuxqvgprdmcclrdwkazvjciecidp","jxgoqngvvdqgfzdtnlppzlpyxissnjpbcfvvdlzztbzspiwfglqbmvvqnpiscxzdmclnervesecqyyuppzeqnfzpddjn","itprgrhysrwmhhaawatgzcoifzidwsmbubyigwcewvfsxipilgmyjoabnhovsr","sdvroatgoiowdqxcchbkxuabrrxqrwqwaamebflbubghhdujyvjtrqjhs","lcizmwl","zbycvvwywvprknqomewgnukldcvzehmailqnpabcehjrsespzmcchlfiutwqhlcgvwwzgftqnsmmlxdot","ycfajupfdilekjptftutzfultpjrupvajbtphxuxjacorflgh","voeqeuorsrbostmivapuxevtmilhzxpeswivyiqkflxgdwpdieptpvplailynqsakhfnoluw","qhaqtselyauycemuspozlctffeurfclumidaildhczgorkrvydqcraxhstswypcjktjzyijgbmozwfk","cifmzmjvtuwzrvszvlkrfbxdztjtwttqxvwtrrdflwraygcnncq","tqwdkiowbbeobixyurrlgzejkvrgpatwdfbkmexu","qmohzsrkypncpinlhthrrjgalqhemwdliueqrnqbjqk","jmuafzdxuyawoopckcihbgibuieaipjjuvelngmdwyhkthoeslmatibnxkexgiasuemzbbagijhuekilhguanvsi","mcfttopijlwyiqjfddidkbrrznxiggspgrzv","wkmpshoyvpcavisaluywwuxwggyguwyrewlsdxuhomkcipelifkzyremrdqnxriaddpzpqzfvdwyiuhkiyxlekpskkzawv","qhcgluzepldgtcsyfquniwdy","sqoxryxxgzqsjclmuvqiqawuidtihogggxjfzkniqjpyjwatpmecziomfgdkis","istjakvtyzzaelduexpmnthzwgkwnhqtfdblilypkxirpnlnqrsjffthjdtbfwhxueboquotzvccnexwcre","lrydfbliheallvpxasjfjfzeehxkxrgabcofnwetcjueolpgexetfieksdkeopci","tptyttbimmijjnbciadfkwspfofbufpjuxcxylcbfdzoiqtsybxehtrryakqyptjkkkcsiqboreoiovoekelnx","zavzklwqyzokxnunkhjylukjqcsrvlkuxs","rtqyhcfhucrqadultzlumazicdu","ohobdcictit","xfganyznjxztlenimrljgyifwypjvmcxmjpdwfgspiyoyjetbrtrtxktiobhnzts","fuvsdvoviyyzqzxliebnxpawtmczyiylnzvbyfilmbbgjoseyxbqawi","kqtwdwcgtbgzmzejvskhevbokzdvomkawvqmsfwdhbnqdxlgy","eplegvqtvywmbqtndpdcbbylonvowepnneqlywrtnryudbqorjasivuwkszxzfwqdqozrbubjuovkxehkenmlorvavznwoxbbj","qjlynqakaxhvmbtzaymetjsilvmxfxjnlspufjxffwksiuyztzklwzvocatawrewicebujfgpq","mghamvubjtiuviceyccpejehmumtaeejraargsbvfxsgbhigjejuvreuvgbjtzbrzmsrsgjhblzqoz","zzvkiqrtyfssalidbudmgpjadfnvewcjxxeizrrkv","wrsegnaznxixzhyhdmslgcgslrcmyvclh","fujynwgcgocsbkzuvvppknspbvnitwbxnaf","lihsicgcjuablnfflwuwifcrfwiioafxxbbqwgzibnwhoxzhvmhbgjafvcumjgthiqiuacojuycejodzghucnpogjyykzitugkcr","wibifkhjooviuxbpucnreszrshiyfgcfywfncxiaodriejwrkskkwlgwxmzkrzfz","pgmogxujiwkgusbriztdkzkoirswmxwmjjeomcbzg","xzoksdragbjecrmropprjbtglqcsxzxaxfthhlkrcshobyisrlv","gfgfhiljcgckutrrectpweexqmqntccqekojlbxsnvmkiareesbazlgsmunbagbmurgwzmb","kldgnhosnhqdfpplqbpujzcpozokvyopbasgvkcevcwsrxjpgaksxybqsofsxzsdeflphvzpzqioflitssplfheepdraeketdj","lrkykfzbqohzghvriwmwrtgptfdgwoclaehxujswufkmmuebvtozbhrjtpcmrwufrsjupoedgqsubbbvlbtkosrfdthrxbcq","cuvkc","qomgdgmepyktyexunnhirbqnarfdf","rmvppwtfmeteylqons","vdiqiavnkoxxqazrphttqhlevygfylfiyjkbmk","nbeawufkicbfhwdohjmhalwxvnexleiarewaklpyrleygvqftnmtwhpxcbiajearbckhydjstlvwfeywdwcu","fnwwldvonsrbqyfwecjclbodmzrgydejnsbshzbzosptoyugmvizkupntxffjzyijcjvnxhuzez","imqfboyfcmbzjduerhkitmpopdaroi","cukchstrkftlgefvyzpsujetytoebujmhwkipdgizdkipjcpvzzchqqrmqylmcszvemjbzgketpkzbrxguanvjbpxok","bvyuoyqyryyeviocouoxdckpotoaklhalkxppvxwvzaxwh","hkjlnprhizooehppsjxbsrbaxyuszevcukvoqffczvonstjiinxtwgzngctnkpbrpeohbxemlcjjgdlcvtfdodpqavcxftmnczk","twzzzushasnqjxzfdtizajegksbhljakizojgausnhkxdfrypiriwmrraqnrhloctrvukkqons","bizlpbpvdkcbcavxogrkaxmzbsujecqphusdxlhprrfokhbkgeapghdclkfgutfhkckoozolsyequrgnrndybvofuzca","uhlgrpshm","fffblhiue","uxfxwhhhzwubnpkshnetkvmokzsnalh","xzbqhsjmkkxkpreqdrooiifvkrxquxwlpytwbmespaqdknxcwfhnjesuwdujghoxznrlxelmi","ljbdlnpjvzbiywyjqmxdxbqiwqkkvqslfklugpzithhviczc","kqhattassqwlrxhpzaytmazlyfgvbglxgiqnrrghdjoclhhleqqlwdeblsviwkciqehcjypozryajlngeqrloxufpuryncat","kyptacgghycdhhnhmlndjaqsrtjudnhwixqvuamkaguagzacczyirfqarfuklvjf","tsuinonhxpreonbxzaztfeffdcymrxngqeuthmzojldodqlhpxpremc","bvejqokgmvsxfugorsldmalka","fxlloyqelywmhiwdtxvtttddthfzbajrgeznmxxgmwzvtmnnwjebeylwjspxygveswxtzefrfhlyhyyambt","wuhqhyxfpsoaoyssbjwjxqzhckfyfsvonlmyphloyoagoxycirdriaramwxsrswbxptxzvdjticaacwnx","vtgnhypjamsfxyvnzghqrmntherndth","fmavnsloegrtcibrbifuibqvjvusppgmprqmibm","prfyttezajzqbcccrhqdevnazibcpznkxouwegpbbapxlrmhkfhoihv","hoaerkgvqbhssdrujbrtmlvwbnhqx","ozerhqqdwfwduyxrjmtxrevbdtgmwpbhkxqjsnlssmestosukzlglqdfi","gthdnp","nukyujeknoixksgludcsmxbbsrqjbpnbtvuawtbihdo","xflmwpjo","eb","uujqhzyytjv","jgowebswpjsggcahajdxzlratrocfghnplpkabnzitmhfhwspgshvpamgqpilgortzvzuoexbaxcalxsxlzsdejgjgihulwxoabq","sytmzzwifklxsrpyldonjbqchisdjfhpmhzjea","eithdxqoyza","sqozuxpdhuaqttpwvyilgjtrtttlmeabuxacxhhjmxfpunzdmxeghuukyutlfkk","njsirzxawbzktvdyrhxzjkqgnipmjffsabonsdmkinjwqhmwngwcravsctcuglkk","dmbkpmbvcklftvucfzjfagowavptxbezhrnkrvnfhauhfrdnfnxuneznqnjlwxxyhfcxrq","cwdnifexgdpqqecqwktngwzqtqvbcywdphfxfnzoavileuflvkcnzirqdkpulrvmgjrqjblwfjdqacmwzytcqrxrspmlleolt"};String chars &#61; "owqugdlpqrnasodvbemfhuzctbibeboxgdklfyzyucomprzzoxwwxm";final int i &#61; countCharacters(words, chars);System.out.println("i &#61; " &#43; i);}/*** 思路三&#xff1a;* 93%* 有以下注意的点&#xff1a;* 1.使用字符串数组记录字符个数* 2.使用flag变量控制是否包含该字符串&#xff08;好像在哪里看到尽量不要使用label这种跳转的....&#xff09;* 3.如果字符串长度大于chars&#xff0c;可以不用比较&#xff0c;直接跳过* 4.可以一边遍历目标字符串&#xff0c;一边比较&#xff0c;可能会提前结束&#xff0c;不用再用一个for循环。** 作者&#xff1a;13217319563* 链接&#xff1a;https://leetcode-cn.com/problems/find-words-that-can-be-formed-by-characters/solution/javazhi-xing-5mschao-guo-93-by-13217319563/* 来源&#xff1a;力扣&#xff08;LeetCode&#xff09;* 著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。* &#64;param words* &#64;param chars* &#64;return*/public static int countCharacters(String[] words, String chars) {int len &#61; 0;char[] cs &#61; new char[26];for (char c : chars.toCharArray()) {cs[c - &#39;a&#39;]&#43;&#43;;}for (String str : words) {boolean flag &#61; true;//如果长度大于chars数组,直接不用比较if (chars.length() cs[t - &#39;a&#39;]) {flag &#61; false;break;}}}if (flag) {len &#43;&#61; str.length();}}return len;}/*** 63.5%* 思路二&#xff1a;* 我们既统计“字母表”中字母出现的次数&#xff0c;也统计单词中字母出现的次数。* 如果单词中每种字母出现的次数都小于等于字母表中字母出现的次数&#xff0c;那么这个单词就可以由字母表拼出来。** 如何实现计数结构呢&#xff1f;一般的方法是用 map&#xff0c;比如 C&#43;&#43; 的 unordered_map 或者 Java 的 HashMap。* 但是我们注意到题目有一个额外的条件&#xff1a;所有字符串中都仅包含小写英文字母。* 这意味着我们可以用一个长度为 26 的数组来进行计数。这也是很多字符串计数问题的常用技巧。** 作者&#xff1a;nettee* 链接&#xff1a;https://leetcode-cn.com/problems/find-words-that-can-be-formed-by-characters/solution/tong-ji-zi-mu-chu-xian-de-ci-shu-shu-zu-ji-qiao-cj/* 来源&#xff1a;力扣&#xff08;LeetCode&#xff09;* 著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。* &#64;param words* &#64;param chars* &#64;return*/
// public static int countCharacters(String[] words, String chars) {
// int[] chars_count &#61; count(chars); // 统计字母表的字母出现次数
// int res &#61; 0;
// for (String word : words) {
// int[] word_count &#61; count(word); // 统计单词的字母出现次数
// if (contains(chars_count, word_count)) {
// res &#43;&#61; word.length();
// }
// }
// return res;
// }
//
// // 检查字母表的字母出现次数是否覆盖单词的字母出现次数
// static boolean contains(int[] chars_count, int[] word_count) {
// for (int i &#61; 0; i <26; i&#43;&#43;) {
// if (chars_count[i] // return false;
// }
// }
// return true;
// }
//
// // 统计 26 个字母出现的次数
// static int[] count(String word) {
// int[] counter &#61; new int[26];
// for (int i &#61; 0; i // char c &#61; word.charAt(i);
// counter[c-&#39;a&#39;]&#43;&#43;;
// }
// return counter;
// }/*** 思路一&#xff1a;使用两个map集合存储word与chars的每个字符出现次数&#xff0c;然后比对&#xff0c;如果存在字符出现在word中&#xff0c;而不出现在chars中&#xff0c;* 则返回0&#xff0c;如果存在word中的某字符数大于chars则返回0&#xff0c;否则返回word长度。* &#64;param words* &#64;param chars* &#64;return*/
// public static int countCharacters(String[] words, String chars) {
// int i,num &#61; 0;
// final Map getmap &#61; getmap(chars);
// System.out.println("charsmap &#61; " &#43; getmap);
// for (String word :words){
// num &#43;&#61; compare(word,getmap);
// }
// return num;
// }
// public static Map getmap(String str){
// int i;
// Map charsmap &#61; new HashMap();
// final String[] split &#61; str.split("");
// for (i &#61; 0;i// if (charsmap.get(split[i]) &#61;&#61; null){
// charsmap.put(split[i],1);
// }else {
// Integer integer &#61; charsmap.get(split[i]);
// integer&#43;&#43;;
// charsmap.put(split[i],integer);
// }
// }
// return charsmap;
// }
// public static int compare(String word, Map chars){
// final Map getmap &#61; getmap(word);
// final Set set &#61; getmap.keySet();
//
// int i;
// if (!chars.keySet().containsAll(set)){
// return 0;
// }else {
// final Iterator iterator &#61; set.iterator();
// while (iterator.hasNext()){
// final Object next &#61; iterator.next();
// if (getmap.get(next) > chars.get(next)){
// return 0;
// }
// }
// }
// return word.length();
// }
}

 


推荐阅读
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 本文介绍了解决二叉树层序创建问题的方法。通过使用队列结构体和二叉树结构体,实现了入队和出队操作,并提供了判断队列是否为空的函数。详细介绍了解决该问题的步骤和流程。 ... [详细]
  • 欢乐的票圈重构之旅——RecyclerView的头尾布局增加
    项目重构的Git地址:https:github.comrazerdpFriendCircletreemain-dev项目同步更新的文集:http:www.jianshu.comno ... [详细]
  • HashMap的相关问题及其底层数据结构和操作流程
    本文介绍了关于HashMap的相关问题,包括其底层数据结构、JDK1.7和JDK1.8的差异、红黑树的使用、扩容和树化的条件、退化为链表的情况、索引的计算方法、hashcode和hash()方法的作用、数组容量的选择、Put方法的流程以及并发问题下的操作。文章还提到了扩容死链和数据错乱的问题,并探讨了key的设计要求。对于对Java面试中的HashMap问题感兴趣的读者,本文将为您提供一些有用的技术和经验。 ... [详细]
  • 1Lock与ReadWriteLock1.1LockpublicinterfaceLock{voidlock();voidlockInterruptibl ... [详细]
  • 判断编码是否可立即解码的程序及电话号码一致性判断程序
    本文介绍了两个编程题目,一个是判断编码是否可立即解码的程序,另一个是判断电话号码一致性的程序。对于第一个题目,给出一组二进制编码,判断是否存在一个编码是另一个编码的前缀,如果不存在则称为可立即解码的编码。对于第二个题目,给出一些电话号码,判断是否存在一个号码是另一个号码的前缀,如果不存在则说明这些号码是一致的。两个题目的解法类似,都使用了树的数据结构来实现。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • 重入锁(ReentrantLock)学习及实现原理
    本文介绍了重入锁(ReentrantLock)的学习及实现原理。在学习synchronized的基础上,重入锁提供了更多的灵活性和功能。文章详细介绍了重入锁的特性、使用方法和实现原理,并提供了类图和测试代码供读者参考。重入锁支持重入和公平与非公平两种实现方式,通过对比和分析,读者可以更好地理解和应用重入锁。 ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • 本文整理了Java面试中常见的问题及相关概念的解析,包括HashMap中为什么重写equals还要重写hashcode、map的分类和常见情况、final关键字的用法、Synchronized和lock的区别、volatile的介绍、Syncronized锁的作用、构造函数和构造函数重载的概念、方法覆盖和方法重载的区别、反射获取和设置对象私有字段的值的方法、通过反射创建对象的方式以及内部类的详解。 ... [详细]
  • 开源Keras Faster RCNN模型介绍及代码结构解析
    本文介绍了开源Keras Faster RCNN模型的环境需求和代码结构,包括FasterRCNN源码解析、RPN与classifier定义、data_generators.py文件的功能以及损失计算。同时提供了该模型的开源地址和安装所需的库。 ... [详细]
  • 在IDEA中运行CAS服务器的配置方法
    本文介绍了在IDEA中运行CAS服务器的配置方法,包括下载CAS模板Overlay Template、解压并添加项目、配置tomcat、运行CAS服务器等步骤。通过本文的指导,读者可以轻松在IDEA中进行CAS服务器的运行和配置。 ... [详细]
  • 文章目录题目:二叉搜索树中的两个节点被错误地交换。基本思想1:中序遍历题目:二叉搜索树中的两个节点被错误地交换。请在不改变其结构的情况下 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了源码分析--ConcurrentHashMap与HashTable(JDK1.8)相关的知识,希望对你有一定的参考价值。  Concu ... [详细]
  • loader资源模块加载器webpack资源模块加载webpack内部(内部loader)默认只会处理javascript文件,也就是说它会把打包过程中所有遇到的 ... [详细]
author-avatar
js陈富军中草药
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有