最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java排列組合字符串的方法

 更新時(shí)間:2018年02月05日 09:32:53   作者:一縷陽(yáng)光直射你的心扉  
這篇文章主要介紹了Java排列組合字符串的方法

例如 輸入“abc”,打印所有可能出現(xiàn)的組合情況,并且消除重復(fù)值。

所謂排列組合如下:

排列組合,字符串:abc
bca
acb
abc
cba
bac
cab

排列組合個(gè)數(shù):6

實(shí)現(xiàn)代碼(結(jié)合Java8 lambda表達(dá)式實(shí)現(xiàn))

import org.junit.Test;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;

public class test2 {

  @Test
  public void test3() {


    String input="abc";
    //1.開(kāi)始排列
    List<String> sortResult = sort(input);
    System.out.println("排列組合,字符串:"+input);
    //2.消除重復(fù)列
    HashSet h = new HashSet(sortResult);
    sortResult.clear();
    sortResult.addAll(h);
    //3.打印輸出
    sortResult.forEach(e -> System.out.println(e));
    //4.打印個(gè)數(shù)
    System.out.println("排列組合個(gè)數(shù):" + sortResult.size());

  }

  private List<String> sort(String input) {
    List<String> sortList = new ArrayList();
    if (input == null || "".equals(input)) {
      System.out.println("提示:您輸入了空字符,請(qǐng)輸入有效值!");
      return new ArrayList();
    }
    char leftChar = input.charAt(0);
    if (input.length() > 1) {
      String rightString = input.substring(1, input.length());
      List<String> rightStringSortedList = sort(rightString);
      rightStringSortedList.forEach((e) -> {
        for (int i = 0; i < e.length() + 1; i++) {
          sortList.add(new StringBuffer(e).insert(i, leftChar).toString());
        }
      });
    } else {
      sortList.add(String.valueOf(leftChar));
    }
    return sortList;
  }
}

如有更簡(jiǎn)潔的代碼實(shí)現(xiàn),請(qǐng)不要吝嗇,貼出來(lái)分享下。

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

相關(guān)文章

  • Spring Boot中實(shí)現(xiàn)定時(shí)任務(wù)應(yīng)用實(shí)踐

    Spring Boot中實(shí)現(xiàn)定時(shí)任務(wù)應(yīng)用實(shí)踐

    定時(shí)任務(wù)一般是項(xiàng)目中都需要用到的,可以用于定時(shí)處理一些特殊的任務(wù)。下面這篇文章主要給大家介紹了關(guān)于Spring Boot中實(shí)現(xiàn)定時(shí)任務(wù)應(yīng)用實(shí)踐的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。
    2018-05-05
  • SpringBoot入坑筆記之spring-boot-starter-web 配置文件的使用

    SpringBoot入坑筆記之spring-boot-starter-web 配置文件的使用

    本篇向小伙伴介紹springboot配置文件的配置,已經(jīng)全局配置參數(shù)如何使用的。需要的朋友跟隨腳本之家小編一起學(xué)習(xí)吧
    2018-01-01
  • 在RedisTemplate中使用scan代替keys指令操作

    在RedisTemplate中使用scan代替keys指令操作

    這篇文章主要介紹了在RedisTemplate中使用scan代替keys指令操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • java去掉文本中多余的空格與空行實(shí)例代碼

    java去掉文本中多余的空格與空行實(shí)例代碼

    在最近的一個(gè)項(xiàng)目中發(fā)現(xiàn)用戶(hù)提交的數(shù)據(jù)中多了很多多余的空格與空行,為了不影響使用,只能想辦法去掉了,下面這篇文章主要給大家介紹了關(guān)于java去掉文本中多余的空格與空行的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-08-08
  • mybatis快速上手并運(yùn)行程序

    mybatis快速上手并運(yùn)行程序

    MyBatis 是一款優(yōu)秀的持久層框架,它支持自定義 SQL、存儲(chǔ)過(guò)程以及高級(jí)映射。MyBatis 免除了幾乎所有的 JDBC 代碼以及設(shè)置參數(shù)和獲取結(jié)果集的工作。MyBatis 可以通過(guò)簡(jiǎn)單的 XML 或注解來(lái)配置和映射原始類(lèi)型、接口和 Java POJO為數(shù)據(jù)庫(kù)中的記錄
    2022-01-01
  • springmvc圖片上傳及json數(shù)據(jù)轉(zhuǎn)換過(guò)程詳解

    springmvc圖片上傳及json數(shù)據(jù)轉(zhuǎn)換過(guò)程詳解

    這篇文章主要介紹了springmvc圖片上傳及json數(shù)據(jù)轉(zhuǎn)換過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • IDEA項(xiàng)目使用SpringBoot+MyBatis-Plus的方法

    IDEA項(xiàng)目使用SpringBoot+MyBatis-Plus的方法

    這篇文章主要介紹了IDEA項(xiàng)目使用SpringBoot+MyBatis-Plus的方法,本文分步驟通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • springboot DTO字符字段與日期字段的轉(zhuǎn)換問(wèn)題

    springboot DTO字符字段與日期字段的轉(zhuǎn)換問(wèn)題

    這篇文章主要介紹了springboot DTO字符字段與日期字段的轉(zhuǎn)換問(wèn)題,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Java進(jìn)階之SPI機(jī)制詳解

    Java進(jìn)階之SPI機(jī)制詳解

    Java SPI機(jī)制在很多大型中間建碼,例如Dubbo中均有采用,屬于高級(jí)Java開(kāi)發(fā)的進(jìn)階必備知識(shí)點(diǎn),務(wù)必要求掌握.文中有非常詳細(xì)的代碼示例及解釋,需要的朋友可以參考下
    2021-05-05
  • Java當(dāng)中讓事務(wù)回滾的幾種方式

    Java當(dāng)中讓事務(wù)回滾的幾種方式

    這篇文章主要給大家介紹了關(guān)于Java當(dāng)中讓事務(wù)回滾的幾種方式, 事務(wù)回滾通常用于在某些操作失敗時(shí)取消之前已執(zhí)行的所有操作,這樣,我們就可以保證數(shù)據(jù)的一致性,需要的朋友可以參考下
    2023-08-08

最新評(píng)論

镇康县| 吉木乃县| 望江县| 张家港市| 嘉定区| 同心县| 汝阳县| 娱乐| 石城县| 崇义县| 西乡县| 图们市| 肃宁县| 清涧县| 临夏市| 桑日县| 天水市| 承德县| 镶黄旗| 秀山| 拜泉县| 高清| 布尔津县| 深泽县| 积石山| 府谷县| 沙洋县| 育儿| 南昌市| 喀喇沁旗| 黔南| 广昌县| 甘泉县| 铁岭市| 若尔盖县| 驻马店市| 兰坪| 杭州市| 灌阳县| 武陟县| 铜梁县|