int[] buf = new int[100];
for (int i = 0; i < buf.length; ++i) {
buf[i] = i;
} int step = 5;
for (int i = 0; i < step; ++i) {
for (int j = 0; j < buf.length / step; ++j) {
System.out.println(buf[i + step * j]);
}
}
for (int i = 0; i < buf.length; ++i) {
buf[i] = i;
} int step = 5;
for (int i = 0; i < step; ++i) {
for (int j = 0; j < buf.length / step; ++j) {
System.out.println(buf[i + step * j]);
}
}
解决方案 »
- 各位我编的一个JAVA文件在运行的时候出现"javaapplication2.NewClass@35ce36"请问如何解释?????
- 做完其实飞行骑这类的小项目,可以看java编程思想这类书吗
- 一个关于编码的问题,请大家帮看看
- 关于模拟鼠标操作,大学研究过没?
- 求java的一个算法或者已完成的类:vox格式转换为的方法
- 哪里有thing in java每章的练习题答案下载~~~
- 请问大家一个setname的问题!!!
- 求签发数字证书的源代码
- 用Jbuilder8的过来看看!JDialog问题
- 和大家讨论一个JRE的问题~~
- 开发Applet是否需要设置classpath?
- 生成可执行JAR包的问题?
不过 for (int i = 0; i < buf.length; ++i) {
buf[i] = i;
}
这一句是让输出结果变成游标的输出,还有我的意思是取出来的数就取出来了不能还在数组里占着位置例如{1,2,3,4,5,6}以步长3来取,结果是{1,4,2,6,3,5}。而用楼主的方法取出来的是{1,4,2,5,3,6}
2 数字到头了可以用MOD的方法来循环 或者你可以统一用(i+step)%vLength,假如是-1则向前一位(还是-1的话 继续,注意用(i+1)%vLength的形式来代替i+1)
3 这题还是用循环链表比较放方便 ,查到一个删一个 查到一个删一个程序我不写了 没工具
for(int i=0;i<100;i++){
a[i] = i+1;
}
int b[] = new int[100];
int index=0;//控制循环次数
length=100;
int step = 3;for(int i=0;i<length;i++){
while(a[index%length]==-1) {
index = (index +1)%length;
}
//选择你要的数字
b[i]=a[index];
a[index]=-1;
index = (index + step)%length;
}没调试过 不敢保证是否正确