算法:字符串所有顺序问题

  字符串"abcde"所有可能顺序的问题,利用递归将问题不断分解达到最小化。

  1. a|bcde;
  2. ab|cde;
  3. abc|de;
复制代码
 1     public void recursionArrange(char[] arrayA,int start,int end){
 2         if(end == 0)
 3             return;
 4         if(start == end){
 5             System.out.println(Arrays.toString(arrayA));
 6         }
 7         else{
 8             for(int i = start;i <= end;i++){
 9                 swap(arrayA,i,start);
10                 recursionArrange(arrayA,start+1,end);
11                 swap(arrayA,i,start);
12             }
13         }
14 
15     }
16     //交换数组m位置和n位置上的值
17     public void swap(char[] arrayA,int m,int n){
18         char temp = arrayA[m];
19         arrayA[m] = arrayA[n];
20         arrayA[n] = temp;
21     }
22 
23     public void test01() {
24         recursionArrange("abcd".toCharArray(),0,3);
25     }
复制代码

 

posted @   厄舍屋下  阅读(29)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示