`

递归列出一个String串中所有字母的所有可能的排列

阅读更多
package com.java.examples.digui;

public class AllOrderOfString {

	public static void allOrder(String str){
		if(str != null && !str.trim().equals("")){
			permuteString("",str);
		}
	}
	private static void permuteString(String beginningString, String endingString) {
		if (endingString.length() == 1)
			System.out.println(beginningString + endingString);
		else
			for (int i = 0; i < endingString.length(); i++) {
				String newString = endingString.substring(0, i)
						+ endingString.substring(i + 1);
				permuteString(beginningString + endingString.charAt(i),
						newString);
			}
	}

	public static void main(String[] args) {
		AllOrderOfString.allOrder("han");
	}
}

分享到:
评论

相关推荐

    WordRanker:按字母顺序排列字符串

    WordRanker 是一个基于 Java 的程序,它的主要功能是按照字母顺序对输入的字符串进行排列,并返回这个排列在所有唯一排列中的排名编号。这个程序的核心算法涉及到字符串处理、排序以及组合数学中的排列计算。 首先...

    _leetcode-python.pdf

    - Longest Common Prefix: 找出一个字符串数组中所有字符串的最长公共前缀。 - 3Sum / 3Sum Closest / 4Sum: 这些题目都涉及到在数组中寻找具有特定和的数字组合,这通常需要用到双指针技术。 - Remove Nth Node ...

    LeetCode算法设计

    1. **数字键盘字母组合问题[M]**:给定一个仅包含数字的字符串,返回所有可能的按键组合。 #### 六、数学 **数学**题目通常涉及基础数学概念的应用。 1. **转置数字——解决溢出的思路[E]**:给定一个32位有符号...

    蓝桥杯大赛java历年真题及答案整理.docx

    1. **全排列定义**:给定一个包含`N`个不同元素的集合,全排列是指将这些元素的所有可能的排列方式都列出来。例如,对于集合{A, B, C},其全排列包括ABC、ACB、BAC、BCA、CAB和CBA,共有`3!`(即`3×2×1=6`)种。 ...

    zoj题目简单归类zoj题目简单归类

    解决策略是设计一个算法,能够遍历所有可能的子串,并判断其是否为回文串。 #### #2773 Formula Summation 题目要求求解一个公式求和问题。解决策略是理解公式的含义,然后通过数学方法或编程实现,计算出公式的...

    java小练习,Java练习小程序,Java必用

    - 给定一个字符串,如果第一个字符是字母,则将它移到字符串末尾。 - 使用String类的方法实现字符串的截取和拼接操作。 27. **质数判断**: - 判断100以内的所有数字是否为质数。 - 可以使用循环结构进行判断,...

    Python经典题目100道题.pdf

    82. **列出一个目录下所有的文件名和子文件名** - 使用 os 模块的 walk() 函数 83. **返回1到10的阶乘列表** - 使用列表推导式和阶乘函数 84. **快速拼接字符串和序列形成新的列表** - 使用列表推导式或 join()...

    数据结构(C++)有关练习题

    e. 如有可能,请建立一个存储商品名称和数量的文本文件,并为二叉搜索树建立一个成员函数SetupInventory(),用于从该文本文件中读取库存商品的数据, 实验报告要求: 1、 按要求记录下二叉搜索树的完整实验...

    2021-2022计算机二级等级考试试题及答案No.10989.docx

    - **示例**:题目中给出的函数`fun()`就是一个涉及递归调用的例子,通过两次调用来展示静态局部变量的特性。 ### 字符串处理 4. **字符串存储**:在大多数编程语言中,字符串被视为字符数组。 - **字符串长度**...

    ls

    它可能探讨了文件和目录操作的各种场景,比如递归列出整个目录树、处理符号链接,或者在多线程环境下安全地访问文件系统。 总之,熟悉"ls"命令不仅是Linux系统管理的基础,也是Java开发者在处理文件系统操作时的...

    C#经典300题 题目目录

    - **使用**:在另一个项目中引用该DLL文件,并调用其中的方法。 **第2章 语法基础** - **实例004 从控制台输出整数类型** - **知识点概述**:讲解如何使用C#的Console类输出整数类型的值。 - **详细说明**: -...

    招商证券笔试题测验-大数据.docx

    - `DBMS OUTPUT`: 是Oracle提供的一个标准包,常用于输出调试信息到客户端,是PL/SQL程序中常用的调试工具。 #### 十四、Oracle有效列名 **题目**: Oracle数据库中,下面()可以作为有效的列名? - (1) Column - (2...

Global site tag (gtag.js) - Google Analytics