欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java題解LeetCode454.四數(shù)相加示例

 更新時間:2023年10月15日 10:33:44   作者:健身的墨鏡  
這篇文章主要為大家介紹了java題解LeetCode454.四數(shù)相加示例思路解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

正文

給你四個整數(shù)數(shù)組 nums1、nums2、nums3 和 nums4 ,數(shù)組長度都是 n ,請你計算有多少個元組 (i, j, k, l) 能滿足:

0 <= i, j, k, l < n

nums1[i] + nums2[j] + nums3[k] + nums4[l] == 0

解決問題

將n的四次方轉(zhuǎn)變?yōu)閚的平方,主要通過按兩個兩個分組打包實現(xiàn),此外注意map中記錄的是前兩個數(shù)組中的內(nèi)容兩兩相加的值的出現(xiàn)次數(shù),這樣做是為了在后面兩個數(shù)組中尋找時,對于每個匹配的組合,都在總的次數(shù)中加上對應(yīng)值出現(xiàn)次數(shù),這樣做是因為該題不去重,每個元組都是獨特的,所以都要算上

public int fourSumCount(int[] nums1, int[] nums2, int[] nums3, int[] nums4) {
        int n=nums1.length;
        int count=0;
        Map<Integer,Integer> map=new HashMap<>();
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                if(map.containsKey(nums1[i]+nums2[j])){
                    int temp=map.get(nums1[i]+nums2[j])+1;
                    map.put(nums1[i]+nums2[j],temp);
                }
                else{
                    map.put(nums1[i]+nums2[j],1);
                }
            }
        }

        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                int temp=-(nums4[j]+nums3[i]);
                if(map.containsKey(temp)){
                    count=count+map.get(temp);
                }
            }
        }
        return count;
    }

以上就是java題解LeetCode454.四數(shù)相加示例的詳細內(nèi)容,更多關(guān)于java LeetCode四數(shù)相加的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 深入介紹Java對象初始化

    深入介紹Java對象初始化

    本文對Java如何執(zhí)行對象的初始化做一個詳細深入地介紹。有需要的小伙伴們可以參考。
    2016-07-07
  • java設(shè)計模式學(xué)習(xí)之策略模式

    java設(shè)計模式學(xué)習(xí)之策略模式

    這篇文章主要為大家詳細介紹了java設(shè)計模式學(xué)習(xí)之策略模式的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • Spring Boot中如何使用斷路器詳解

    Spring Boot中如何使用斷路器詳解

    這篇文章主要給大家介紹了關(guān)于Spring Boot中如何使用斷路器的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-08-08
  • WeakHashMap?和?HashMap?區(qū)別及使用場景

    WeakHashMap?和?HashMap?區(qū)別及使用場景

    這篇文章主要為大家介紹了WeakHashMap?和?HashMap?的區(qū)別是什么以及何時使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • SpringBoot詳細講解斷言機制原理

    SpringBoot詳細講解斷言機制原理

    斷言Assertion是測試方法中的核心部分,用來對測試需要滿足的條件進行驗證。這些斷言方法都是org.junit.jupiter.api.Assertions的靜態(tài)方法。檢查業(yè)務(wù)邏輯返回的數(shù)據(jù)是否合理。所有的測試運行結(jié)束以后,會有一個詳細的測試報告
    2022-06-06
  • Mybatis-Plus主鍵生成策略的方法

    Mybatis-Plus主鍵生成策略的方法

    本文主要介紹了Mybatis-Plus主鍵生成策略的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 詳談springboot過濾器和攔截器的實現(xiàn)及區(qū)別

    詳談springboot過濾器和攔截器的實現(xiàn)及區(qū)別

    今天小編就為大家分享一篇詳談springboot過濾器和攔截器的實現(xiàn)及區(qū)別,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • Java中MapStruct的使用詳解

    Java中MapStruct的使用詳解

    這篇文章主要介紹了Java中MapStruct的使用詳解,mapstruct,全稱是org.mapstruct.Mapper, 是將接口或抽象類標(biāo)記為映射器,并通過MapStruct為這個接口或者抽象類生成一個實現(xiàn)類,大大簡化了Java bean類型之間轉(zhuǎn)換,需要的朋友可以參考下
    2023-09-09
  • 利用MultipartFile實現(xiàn)文件上傳功能

    利用MultipartFile實現(xiàn)文件上傳功能

    這篇文章主要為大家詳細介紹了利用MultipartFile實現(xiàn)文件上傳功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 在Spring Boot中加載XML配置的完整步驟

    在Spring Boot中加載XML配置的完整步驟

    這篇文章主要給大家介紹了關(guān)于在Spring Boot中加載XML配置的完整步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09

最新評論