2419。具有最大位元與
的最長子數組難度:中
主題:陣列、位元操作、腦筋急轉彎
給你一個大小為 n 的整數陣列 nums。
考慮 nums 中的一個非空子數組,它具有最大可能的按位與。
回傳最長這樣的子數組的長度。
陣列的位元與為陣列中所有數字的位元與。
子數組是數組中連續的元素序列。
範例1:
範例2:
約束:
提示:
解:
我們先一步步分解問題:
位元與屬性:
目標:
對於輸入數組 [1,2,3,3,2,2],最大值為 3。只有 3s 的最長連續子數組是 [3,3],其長度為 2。
讓我們用 PHP 實作這個解:2419。具有最大位元組與
的最長子數組
<?php /** * @param Integer[] $nums * @return Integer */ function longestSubarray($nums) { ... ... ... /** * go to ./solution.php */ } // Test cases $nums1 = [1, 2, 3, 3, 2, 2]; $nums2 = [1, 2, 3, 4]; echo "Output for [1, 2, 3, 3, 2, 2]: " . longestSubarray($nums1) . "\n"; // Output: 2 echo "Output for [1, 2, 3, 4]: " . longestSubarray($nums2) . "\n"; // Output: 1 ?>
對於輸入 [1, 2, 3, 3, 2, 2],輸出為 2,對於 [1, 2, 3, 4],輸出為 1,如預期。
這個解決方案處理了約束並有效地解決了問題。
聯絡連結
如果您發現本系列有幫助,請考慮在 GitHub 上給 存儲庫 一個星號或在您最喜歡的社交網絡上分享該帖子? 。您的支持對我來說意義重大!
如果您想要更多類似的有用內容,請隨時關注我:
以上是具有最大位與的最長子數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!