排序
遇到的问题;
-老师说完题目后,我第一反应就是翻出课堂实践老师给出的答案。然后进行修改,同样是用冒泡,但是我的代码还是有一些问题。
要求用命令行输入,并进行排序。
- 我的课堂代码(有问题)
import java.lang.Integer;
public class CLSum {
public static void main(String [] args) {
int i;
int a = 0;
int [] tmp = new int [args.length];
for( i=0; i<args.length; i++) {
tmp[i] = Integer.parseInt(args[i]);
}
for(int t=0;t<args.length; t++){
if(tmp[t] <tmp[t+1])
a=tmp[t];
tmp[t]=tmp[t+1];
tmp[t+1]= a;
}
System.out.println(tmp);
}
}
- 回来后自己查询资料写的代码
import java.util.*;
public class MySort {
public static void main(String[] args) {
int[] arr = new int[10];
for(int i=0;i<args.length;i++)
{
arr[i]=Integer.parseInt(args[i]);
}
for(int i=0;i<args.length-1;i++){
for(int j=0;j<args.length-i-1;j++){
if(arr[j]>arr[j+1]){
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
for(int i=0;i<args.length;i++)
{
System.out.printf("%d ",arr[i]);
}
}
}
调用链表并进行添加值
- 对书上代码进行调用,并添加至
- 会调用但不会添加。
- 同学帮助下修改的代码如下
困难
-老师说的是自己写一个程序调用链表,并进行添加元素。我就自己重新写了一个调用,调用我会,但是添加元素就不太会了。
回来后请教同学,将代码写出。
public class SimpleLinkedList {
private class Node {
public Object elem;
Node(Object o) {
this.o = o;
}
Object o;
Node next;
}
private Node first;
public void add(Object elem) {
Node node = new Node(elem);
if(first == null) {
first = node;
}
else {
append(node);
}
}
private void append(Node node) {
Node last = first;
while(last.next != null) {
last = last.next;
}
last.next = node;
}
public int size() {
int count = 0;
Node last = first;
while(last != null) {
last = last.next;
count++;
}
return count;
}
public Object get(int index) {
checkSize(index);
return findElemOf(index);
}
private void checkSize(int index) throws IndexOutOfBoundsException {
int size = size();
if(index >= size) {
throw new IndexOutOfBoundsException(
String.format("Index: %d, Size: %d", index, size));
}
}
private Object findElemOf(int index) {
int count = 0;
Node last = first;
while(count < index) {
last = last.next;
count++;
}
return last.elem;
}
public static void main(String[] args) {
SimpleLinkedList Sim=new SimpleLinkedList();
System.out.println(Sim.size());
}
}
- 自己的代码如下
public class Diaoyong {
public static void main(String[] args){
SimpleLinkedList SIZE=new SimpleLinkedList();
System.out.println();
}
}
感想
这次实践,感觉自己会一点,但不全会,还是积累太少,需要继续努力,还是伪代码到产品代码的路任重而道远。
-总是看了别人的代码而不明觉厉