Re: [請益] 如何不用for迴圈去判斷「陣列」或「字串ꄠ…

看板PHP作者 (◤◢██◣◥█████)時間19年前 (2006/12/21 18:09), 編輯推噓2(201)
留言3則, 1人參與, 最新討論串1/2 (看更多)
※ 引述《saininniang (sob)》之銘言: : 我現在的input pattern 有1600多萬組 : 產生完input pattern還要去各別處理 : 程式執行完將近要十分鐘 : 太慢了 : 想問有沒有不要用for迴圈就能判斷「字串」或「陣列」有無值重覆? : php有這樣的指令嗎? : 我原本都是用兩層for迴圈去一一判斷 : 但效率實在太差 : 會想這樣做的原因是可以少處理將近一半的input pattern : 應該可以省下很多時間 : 以字串來說 : 1223 ==> 不處理 : 1332 ==> 不處理 : 1432 ==> 處理 : 以陣列來說 : [1,2,2,3] ==>不處理 : [1,3,3,2] ==>不處理 : [1,4,3,2] ==>處理 : 上述的例子其實是簡化過後的 : 不然其實不只4個位元而已 : 實在是太龐大了@@ if(array_sum(array_count_values($input))!=count($input))continue;//不處理 : ※ 編輯: saininniang 來自: 220.133.142.122 (12/21 18:06) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.158.15

12/21 18:27, , 1F
不太懂 array_sum(array_count_values($input))這樣有什麼用耶
12/21 18:27, 1F

12/21 18:28, , 2F
為什麼不直接用 count(array_unique($input)) 就好?
12/21 18:28, 2F

12/21 18:36, , 3F
用 if($input!=array_unique($input))continue; 這樣更快
12/21 18:36, 3F
文章代碼(AID): #15YbrUG9 (PHP)
文章代碼(AID): #15YbrUG9 (PHP)