首页 > 其他分享 >给定一个字符串,输出他的所有排列

给定一个字符串,输出他的所有排列

时间:2023-10-31 19:05:47浏览次数:37  
标签:输出 String length 给定 Soluction 字符串


给定一个字符串,输出他的所有排列

最近课堂上碰到一个给定字符串,要求输出他的所有排列可能,故此得到一份代码如下:

public class Soluctiomn {
    // 本算法为回溯法
    public static void main(String[] args) {
	    String str = "average";  // 给定的字符串
	    Soluction(str, ""); 
    }

private static void Soluction(String x, String y) {
	if (x.length() == 0) {  //判断一下,如果String s 的长度为0 则直接输出字符串y
		System.out.println(y);
		return;   //结束
	}
	
	for (int i = 0; i < x.length(); i++) {//循环将的到的字符串排列输出
		String news = x.substring(0, i) + x.substring(i + 1, x.length());
		Soluction(news, y + x.charAt(i));
	}
  }
}

本次算法分享到这,这道题也有不同的思路,读者也可以试试自己的想法。


标签:输出,String,length,给定,Soluction,字符串
From: https://blog.51cto.com/u_16330533/8112757

相关文章

  • 输入字符串,将字符串逆向输出
    输入字符串将他逆输出使用string定义两个字符a,b,使用Scanner给a输入字符,再使用toCharArray()方法将字符串转化为字符数字,再利用for()循环将字符数组逆序赋值给字符串b,再输出b.代码如下:importjava.util.Scanner;//输入一串字符将其倒着顺序输出publicclassDemo{ public......
  • js中字符串使用单引号还是双引号
    ES6如下描述:字符串静态字符串一律使用单引号或反引号,不使用双引号。动态字符串使用反引号。//badconsta="foobar";constb='foo'+a+'bar';//acceptableconstc=`foobar`;//goodconsta='foobar';constb=`foo${a}bar`;......
  • DC电源模块去除输出电源中的高频噪声及杂波
    BOSHIDADC电源模块去除输出电源中的高频噪声及杂波DC电源模块是电路中常用的部件,用于提供电子元器件的工作电源。然而,在使用DC电源模块的过程中,往往会出现一些问题,比如输出电源中产生的高频噪声和杂波。这些问题不仅会影响电路的稳定运行,还会影响到元器件的寿命,因此需要采取措施......
  • SQL SERVER根据数据表的某个栏位查询另一个数据表符合条件的某个栏位的值,如果多行则合
    SQLSERVER根据数据表的某个栏位查询另一个数据表符合条件的某个栏位的值,如果多行则合并为一张字符串形式要在SQLServer中根据一个数据表的某个列查询另一个数据表符合条件的某个列的值,并将多行结果合并为一个字符串,可以使用FORXMLPATH子句来执行此操作。以下是一个示例:......
  • mysql中的is null和空字符串
    相比于oracle,mysql中的isnull和空坑就没那么多,直接写就行。不为空and(usernameisnotnullandusername!='')注:不为空中间用的是and。为空and(usernameisnullorusername!='')注:为空中间用的是or。......
  • 【算法题】2788. 按分隔符拆分字符串
    题目:给你一个字符串数组words和一个字符separator,请你按separator拆分words中的每个字符串。返回一个由拆分后的新字符串组成的字符串数组,不包括空字符串。注意separator用于决定拆分发生的位置,但它不包含在结果字符串中。拆分可能形成两个以上的字符串。结果字符串必......
  • 字符串表达式计算(a+b/(a-b))的思路与实践
    前言为满足业务需要,需要为项目中自定义模板添加一个计算字段的组件,通过设置字符串表达式,使用时在改变表达式其中一个字段的数据时,自动计算另外一个字段的值。本篇为上篇,介绍原理,简单实现一个工具,输入字符串表达式,解析其中的参数,输入参数计算结果。下篇将基于此封装实现对Mongo......
  • C++基本输入输出
    C++基本输入输出C++标准库提供了一组丰富的输入/输出功能。C++的I/O操作发生在流中,流是字节序列。如果字节流是从设备(如键盘、磁盘驱动器、网络连接等)流向内存,这叫做输入操作。如果字节流是从内流向设备(如显示器、打印机、磁盘驱动器、网络连接等),这叫做输出操作。I/O库头文件......
  • 无涯教程-C语言 - 输入(Input)&输出(Output)
     C编程提供了一组内置函数来读取给定的输入,并根据需要将其输入到程序中。getchar()和putchar()函数intgetchar(void)  - 函数从屏幕读取下一个可用字符,并将其作为整数返回。intputchar(intc)  - 函数将传递的字符放在屏幕上,并返回相同的字符。#include<stdi......
  • 28. 找出字符串中第一个匹配项的下标
    给你两个字符串haystack和needle,请你在haystack字符串中找出needle字符串的第一个匹配项的下标(下标从0开始)。如果needle不是haystack的一部分,则返回-1。示例1:输入:haystack="sadbutsad",needle="sad"输出:0解释:"sad"在下标0和6处匹配。第一个匹......