public class Arrange {
public Arrange(){
}
public void arrangeData(int[] data,int left,int right){
if(left == right){
print(data);
return;
}
for(int i = left;i <= right;i++){
swap(data,left,i);
arrangeData(data,left+1,right);
swap(data,left,i);
}
}
private void swap(int[] data,int i,int j){
int temp = data[i];
data[i] = data[j];
data[j] = temp;
}
private void print(int[] data){
for(int i = 0;i < data.length;i++){
System.out.print(data[i]+" ");
}
System.out.println();
}
public static void main(String[] args) {
Arrange arrn = new Arrange();
arrn.arrangeData(new int[]{1,2,3}, 0, 2);
}
}
全排列算法
最新推荐文章于 2023-05-19 01:46:57 发布