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

java去除已排序數(shù)組中的重復(fù)元素

 更新時間:2016年09月17日 16:56:47   作者:u014717036  
這篇文章主要為大家詳細介紹了java去除已排序數(shù)組中重復(fù)元素的方法,感興趣的小伙伴們可以參考一下

題目描述

給定一個已排序的數(shù)組,去除數(shù)組中的重復(fù)元素,只保留一個重復(fù)的元素,并且返回新的數(shù)組長度。

要求:
不要給數(shù)組分配額外的空間,你必須使用常量的內(nèi)存大小進行原地操作。

例如:
給出數(shù)組A=[1,1,2],你的函數(shù)調(diào)用之后必須返回長度length=2,并且A現(xiàn)在變成[1,2]。

輸入

一個已排序的數(shù)組,例如[1,1,2]。

輸出

返回數(shù)組新的長度,例如length=2。

快慢指針法

設(shè)置fast指針遍歷數(shù)組,slow指針指向不重復(fù)元素的下一位。

public static int removeDuplicates(int[] nums)
{
  if (nums.length < 1)
    return nums.length;
  int slow = 1;
  for (int fast = 1; fast < nums.length; fast++) {
    if (nums[fast] != nums[slow - 1]) {
      nums[slow++] = nums[fast];
    }
  }
  return slow;
}

動畫演示:

擴展

去除已排序數(shù)組中的重復(fù)元素,保留指定位數(shù)。

public static int removeDuplicatesN(int[] nums, int repeatN)
{
 if (nums.length <= repeatN)
  return nums.length;
 int index = repeatN;
 for (int i = repeatN; i < nums.length; i++) {
  if (nums[i] != nums[index - repeatN]) {
   nums[index++] = nums[i];
  }
 }
 return index;
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • JAVA多線程的使用場景與注意事項總結(jié)

    JAVA多線程的使用場景與注意事項總結(jié)

    這篇文章主要給大家介紹了關(guān)于JAVA多線程的使用場景與注意事項的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • java 如何讀取遠程主機文件

    java 如何讀取遠程主機文件

    這篇文章主要介紹了java 如何讀取遠程主機文件的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • MyBatis批量插入數(shù)據(jù)過程解析

    MyBatis批量插入數(shù)據(jù)過程解析

    這篇文章主要介紹了MyBatis批量插入數(shù)據(jù)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • Assert.assertNotNull()斷言是否是空問題

    Assert.assertNotNull()斷言是否是空問題

    這篇文章主要介紹了Assert.assertNotNull()斷言是否是空問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • Spring中RedisTemplate使用方法詳解

    Spring中RedisTemplate使用方法詳解

    Spring封裝了一個比較強大的模板,也就是redisTemplate,方便在開發(fā)的時候操作Redis緩存,這篇文章主要給大家介紹了關(guān)于Java中RedisTemplate使用方法的相關(guān)資料,需要的朋友可以參考下
    2023-12-12
  • spring簡單MVC實現(xiàn)方法(URL映射及其參數(shù)使用、查詢(id、其他參數(shù))、增加)

    spring簡單MVC實現(xiàn)方法(URL映射及其參數(shù)使用、查詢(id、其他參數(shù))、增加)

    這篇文章主要介紹了spring簡單MVC實現(xiàn)方法(URL映射及其參數(shù)使用、查詢(id、其他參數(shù))、增加),方法參數(shù)使用包括在無注解下獲取參數(shù),使用@RequestParam 獲取參數(shù)的方法,每種方法講解的非常詳細,需要的朋友可以參考下
    2024-01-01
  • java實現(xiàn)多線程交替打印

    java實現(xiàn)多線程交替打印

    這篇文章主要為大家詳細介紹了java實現(xiàn)多線程交替打印,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • BootStrap Jstree 樹形菜單的增刪改查的實現(xiàn)源碼

    BootStrap Jstree 樹形菜單的增刪改查的實現(xiàn)源碼

    這篇文章主要介紹了BootStrap Jstree 樹形菜單的增刪改查的實現(xiàn)源碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-02-02
  • java中調(diào)用GDAL DLL的實現(xiàn)方法

    java中調(diào)用GDAL DLL的實現(xiàn)方法

    本篇文章是對java中調(diào)用GDAL DLL的實現(xiàn)方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • 基于SpringBoot構(gòu)建電商秒殺項目代碼實例

    基于SpringBoot構(gòu)建電商秒殺項目代碼實例

    這篇文章主要介紹了基于SpringBoot構(gòu)建電商秒殺項目代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05

最新評論