字符串的排列数-Java

本文介绍了如何使用Java解决计算字符串所有不同排列数的问题。通过递归构造的方法,对给定的不超过10个字符的大写字母字符串S,计算并输出其所有不重复的排列组合数量。例如,对于输入字符串'ABA',输出为3;对于'ABCDEFGHHA',输出为907200。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目描述

给定一个只包含大写英文字母的字符串S,要求你给出对S重新排列的所有不相同的排列数。如:S为ABA,则不同的排列有ABA,AAB,BBA三种。

输入

输入一个长度不超过10的字符串S,我们确保都是大写的。

输出

输出S重新排列的所有不相同的排列数(包含自己本身)。

样例

输入样例1
ABA
输出样例1
3

输入样例2
ABCDEFGHHA
输出样例2
907200

代码

算法思想:递归构造。

import java.util.Arrays;
import java.util.HashSet;
import java.util.Scanner;

public class SomeTest {
   
	static boolean[] visited=new boolean[10];
	static HashSet<String> result=n
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值