`

实现字符串的所有组合(JAVA)

    博客分类:
  • J2SE
 
阅读更多
public class Combine {

	public static void main(String[] args) {
		new Combine().combine(new String("STJ"));
	}

	void combine(String str) {
		char[] in = str.toCharArray();
		StringBuffer out = new StringBuffer();
		allCombine(in, out, 0);
	}

	void allCombine(char[] in, StringBuffer out, int start) {
		for (int i = start; i < in.length; i++) {
			out.append(in[i]);
			System.out.println(out);
			if (i < in.length - 1) {  //如果有下个元素,则递归折行
				allCombine(in, out, i + 1);
			}
			out.setLength(out.length() - 1);  //清空out
		}
	}
}

输出结果:

S
ST
STJ
SJ
T
TJ
J

参见:http://topic.csdn.net/u/20081215/19/a72991ed-5801-4223-8705-81e2d66ca8c5.html

分享到:
评论

相关推荐

    输入一个字符串,输出所有该字符串的组合情况

    标题 "输入一个字符串,输出所有该字符串的组合情况" 涉及的主要知识点是字符串处理和算法,特别是组合和排列的生成。在这个问题中,我们需要编写程序来生成一个给定字符串的所有可能的子序列或子字符串,这通常涉及...

    Java分割字符串

    在Java编程语言中,分割字符串是一项常见的操作,它允许我们将一个长字符串分解成多个子字符串,每个子字符串对应原字符串中的某个部分。这通常通过使用`split()`方法来实现,该方法是Java `String`类的一个成员。在...

    java实现字符串排列组合问题

    下面是一个 Java 实现字符串组合问题的解决方案: ```java import java.util.ArrayList; import java.util.List; public class Solution_stringcombination { // 求字符串中所有字符的组合abc&gt;a,b,c,ab,ac,bc,abc ...

    Java实现abc字符串排列组合

    "Java实现abc字符串排列组合" 本文将详细介绍Java实现abc字符串的排列组合,主要包括可重复排列、全排列和组合三个部分。 可重复排列 在Java中,可以使用递归来实现abc字符串的可重复排列。可重复排列是指从abc三...

    Java实现字符数组全排列的方法

    下面我们将深入探讨如何使用Java实现字符数组的全排列。 首先,我们需要了解回溯法。回溯法是一种试探性的解决问题方法,它尝试逐步找到问题的所有解。当发现某一步无法继续找到有效解时,会退回一步,尝试其他的...

    java中常用字符串方法总结

    字符串对象的处理涉及很多方法,这些方法使得我们在处理文本时能实现各种功能。本文将深入探讨Java中的一些常用字符串方法,帮助你更好地理解和运用它们。 1. **创建字符串对象** 在Java中,有多种方式来创建字符...

    Java 字符串常用方法

    在Java编程语言中,`String`类是至关重要的,它被广泛用于...同时,要记住,虽然`String`对象是不可变的,但通过`StringBuilder`或`StringBuffer`类可以实现字符串的可变操作,这在需要多次修改字符串的场合更为高效。

    java 字符串转16进制Ascii

    在Java编程语言中,将字符串转换为16进制ASCII值是一个常见的操作,尤其是在处理数据编码、网络通信或存储时。这个过程涉及到字符到数字的转换,并且通常使用`Character`类和`Integer`类的方法来完成。让我们深入...

    使用几种常见的方法实现字符串反转

    在Java中,可以通过`BufferedReader`类从字符流中读取文本,并利用循环来实现字符串的反转。 1. **引入必要的包**: ```java import java.io.*; ``` 2. **创建`BufferedReader`实例**: - 首先创建`...

    java 给字符串编号

    在Java编程中,给字符串编号通常涉及到字符串处理和循环结构的应用。这可能包括在字符串的每个元素前或后添加特定的编号,...通过以上知识点的组合和调整,我们可以灵活地实现“给字符串编号”的功能,满足不同的需求。

    java字符串编码转换

    通过 `getBytes("ISO-8859-1")` 和 `new String(..., "GB2312")` 的组合,可以将该字符串转换为GB2312编码。 **3. 浏览器与服务器间的编码一致性** 在Web应用中,浏览器与服务器之间的编码一致性至关重要。通常...

    java中如何截取字符串.txt

    Java提供了多种方式来实现字符串的截取功能,包括`substring()`、`subSequence()`等内置方法。下面将逐一介绍这些方法及其具体用法。 #### 1. `substring()` 方法 `substring()` 方法是Java中最常用的字符串截取...

    字符串逆序-使用Java实现的字符串按单词逆序.zip

    这里我们关注的是如何使用Java来实现一个特定的功能:字符串按单词逆序。这个功能涉及到对字符串的解析、分割以及重新组合,是字符串操作的一个典型实例。 首先,让我们理解什么是字符串逆序。在一般情况下,字符串...

    java-区分数字元素和字符串元素的数组排序-代码

    Java 数组排序与分离数字元素和字符串元素的代码实现 Java 是一种广泛使用的编程语言,拥有强大的功能和灵活的应用场景。数组排序是 Java 编程中的一种常见操作,而在实际应用中,数组元素可能包含数字字符串和字符...

    java随机生成字符串(字符随机生成类 生成随机字符组合).docx

    - **定义**:`TYPE` 枚举定义了不同类型的字符串组合方式。 - **枚举值**: - `LETTER`:仅包含小写字母。 - `CAPITAL`:仅包含大写字母。 - `NUMBER`:仅包含数字。 - `SIGN`:仅包含特殊符号。 - `LETTER_...

    字符串翻转,单词不翻转java语言实现

    总结起来,"字符串翻转,单词不翻转java语言实现"这个知识点主要涉及Java中的字符串处理、数组操作和字符串构建。理解和掌握这些技能对于进行Java编程至关重要,特别是在处理文本数据时。通过这个练习,开发者可以...

    16进制Ascll与字符串相互转换

    将这些字符组合起来,就形成了字符串'ABC'。 字符串转16进制ASCII则相反,它需要对字符串中的每个字符进行16进制编码。首先,确定每个字符的ASCII码值,然后将其转换为16进制表示。例如,对于字符串'ABC',字符'A'...

    java实现字符串的全排列

    java实现字符串的全排列是指通过编程语言java来生成一个字符串的所有可能排列。例如输入字符串abc,则输出所有可能的排列组合:abc,acb,bac,bca,cab和cba。 在java中,实现字符串的全排列可以使用递归思想。将需要...

    截取特定部分字符串

    接下来,我们将深入探讨如何在Android和Java中进行字符串截取,以及如何重新组合这些截取的部分。 1. **`substring()` 方法**:这是Java语言中最常用的字符串截取方法。它接受两个参数,第一个参数是起始索引(包含...

    Java递归实现字符串全排列与全组合

    "Java递归实现字符串全排列与全组合" Java递归实现字符串全排列与全组合是指使用Java语言通过递归算法实现字符串的全排列和全组合。全排列是指将字符串中的所有元素按照一定的顺序进行排列,而全组合是指将字符串...

Global site tag (gtag.js) - Google Analytics