今天学习算法看到栈和队列,其中有一题是说十进制转换为八进制,对算法的了解还不深,就想着先用自己会的写一个答案。
package 栈;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Scanner;
public class Ten2Eight {
/**
* @param args
*/
public static void main(String[]args){
Scanner sc=new Scanner(System.in);
List list=new ArrayList();
int ran=sc.nextInt();
do{
int a=ran%8;
ran/=8;
list.add(a);
}while(ran>8);
list.add(ran);
int[]arr=new int[list.size()];
Iterator it=list.iterator();
while(it.hasNext()){
for(int i=list.size()-1;i>=0;i--){
arr[i]=(int)it.next();
}
}
for(int x:arr){
System.out.print(x+" ");
}
}
}
这样就可以输出一个十进制数的八进制表示