成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Check some

Zhuxy / 2605人閱讀

public static boolean checkDuplicateWithinK(int[][] mat, int k){
    class Cell{
        int row;
        int col;
        public Cell(int r, int c){
            this.row = r;
            this.col = c;
        }
    }
    int n = mat.length;
    int m = mat[0].length;
    k = Math.min(k, n*m);
    //map from distance to cell postions of the matrix
    Map> map = new HashMap>();
    for(int i = 0; i < n; i++){
        for(int j = 0; j < m; j++){
            if(map.containsKey(mat[i][j])){
                for(Cell c : map.get(mat[i][j])){
                    int Dist = Math.abs(i - c.row)+Math.abs(j - c.col);
                    if(Dist <= k){
                        return true;
                    }
                    if(i - c.row > k){
                        map.remove(c);
                    }
                }
                map.get(mat[i][j]).add(new Cell(i, j));
            }
            else{
                map.put(mat[i][j], new HashSet());
                map.get(mat[i][j]).add(new Cell(i, j));
            }
        }
    }
    return false;
}
public boolean checkDuplicatesWithinK(int[][] matrix, int k) {
        //convert matrix to an array
        int[] arr = Arrays.stream(matrix)
                .flatMapToInt(Arrays::stream)
                .toArray();


        // Creates an empty hashset
        HashSet set = new HashSet<>();

        // Traverse the input array
        for (int i = 0; i < arr.length; i++) {
            // If already present n hash, then we found
            // a duplicate within k distance
            if (set.contains(arr[i]))
                return true;

            // Add this item to hashset
            set.add(arr[i]);

            // Remove the k+1 distant item
            if (i >= k)
                set.remove(arr[i - k]);
        }

    
        return false;
    }

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/64971.html

相關(guān)文章

  • Some useful JS techniques that you may not know

    I complete reading JavaScript Enlightenment recently. The book is more about basics in JavaScript and suitable for beginners. Here are a list of my benefits and extensions from the book. Math JavaScri...

    stackvoid 評論0 收藏0
  • Promise到底解決了什么問題?

    摘要:我的博客大家都知道解決了回調(diào)地獄的問題。這就是異步的嵌套帶來的可讀性的問題,它是由異步的運(yùn)行機(jī)制引起的。在與第三方團(tuán)隊溝通之后問題得到了解決。這不但使代碼變得臃腫不堪,還進(jìn)一步加劇了可讀性的問題。的特征保證了可以解決信任問題。 我的github博客 https://github.com/zhuanyongxigua/blog 大家都知道Promise解決了回調(diào)地獄的問題。說到回調(diào)地獄,...

    yibinnn 評論0 收藏0
  • Enzyme

    Since the enzyme can make us get easier to update to new version of React and make our test code more lean and maintainableYoud better not use props() to get props from component, because Enzyme docum...

    Amos 評論0 收藏0
  • Dubbo壓測插件的實現(xiàn)——基于Gatling

    摘要:為了控制壓測時的,則需要實現(xiàn)邏輯。則是獲取屬性并初始化客戶端客戶端配置則提供了設(shè)置泛化調(diào)用入?yún)⒌囊约敖酉聛硪榻B的部分的全鏈路壓測中,我們都使用校驗請求結(jié)果,壓測插件中,我們也實現(xiàn)了基于的校驗。 Dubbo 壓測插件已開源,本文涉及代碼詳見gatling-dubbo Gatling 是一個開源的基于 Scala、Akka、Netty 實現(xiàn)的高性能壓測框架,較之其他基于線程實現(xiàn)的壓測框架...

    BigTomato 評論0 收藏0
  • Dubbo壓測插件的實現(xiàn)——基于Gatling

    摘要:為了控制壓測時的,則需要實現(xiàn)邏輯。則是獲取屬性并初始化客戶端客戶端配置則提供了設(shè)置泛化調(diào)用入?yún)⒌囊约敖酉聛硪榻B的部分的全鏈路壓測中,我們都使用校驗請求結(jié)果,壓測插件中,我們也實現(xiàn)了基于的校驗。 Dubbo 壓測插件已開源,本文涉及代碼詳見gatling-dubbo Gatling 是一個開源的基于 Scala、Akka、Netty 實現(xiàn)的高性能壓測框架,較之其他基于線程實現(xiàn)的壓測框架...

    CoreDump 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<