前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java 输出字符串的所有排列_Java程序打印字符串的所有排列

java 输出字符串的所有排列_Java程序打印字符串的所有排列

作者头像
用户7886150
修改2021-04-29 14:42:30
1.1K0
修改2021-04-29 14:42:30
举报
文章被收录于专栏:bit哲学院bit哲学院

参考链接: Java程序来计算字符串的所有排列

以下是Java程序,用于打印字符串的所有排列-

 示例public class Demo{

 static void print_permutations(String my_str,String my_ans){

 if (my_str.length() == 0){

 System.out.print(my_ans + " ");

 return;

 }

 boolean my_arr[] = new boolean[26];

 for (int i = 0; i 

 char ch = my_str.charAt(i);

 String remaining_str = my_str.substring(0, i) + my_str.substring(i + 1);

 if (my_arr[ch - 'a'] == false)

 print_permutations(remaining_str, my_ans + ch);

 my_arr[ch - 'a'] = true;

 }

 }

 public static void main(String[] args){

 String my_str = "hey";

 System.out.println("字符串的排列是:");

 print_permutations(my_str, "");

 }

 }

 输出结果字符串的排列是:

 hey hye ehy eyh yhe yeh

 名为Demo的类包含一个静态函数'print_permutations',该函数检查字符串是否为空,如果为空,则输出输出。现在,分配了一个名为“ my_arr”的布尔数组,其大小为36,其中默认情况下存储了“ false”值。每当使用字母时,其在数组中的索引都会更改为“ true”。

 “ for”循环用于遍历字符串的长度,并检查字符串的ith个字符。字符串的其余部分(不带第ith个字符)将分配给名为“ remaining_str”的字符串。如果未使用该字符,则会对该函数进行递归调用。否则,不会发生任何函数调用。在main函数中,定义了一个字符串,并在该字符串上调用了该函数。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档