Data Structure homework

繳交規定


homework #1

1.sort & search之練習

主題:成績處理

輸入:成績檔,包含學號,姓名,國文,英文,數學,自然四科內容 (以text輸入盒輸入成績檔名)

結構: 使用parallel array或 class (array of object)

功能

1.排序:依學號或姓名排序(二種皆須提供),請分別以bubble sort 及 selection sort完成

2.搜尋:依學號或姓名搜尋(二種皆須提供),請分別以binary search及linear search完成

3.顯示:列出排序或搜尋之結果,含學號,姓名,國文,英文,數學,自然,總分,平均,平均之等第,名次

4.統計:統計且列出統計結果,含各科平均,標準差,最高分,最低分

Hint:讀檔&字串剖析

ip=new FileReader(filename);
BufferedReader ip2=new BufferedReader(ip);
 
 total=ip2.readLine();
  StringTokenizer token=new StringTokenizer(total,",");
  name[i]=token.nextToken();
  sc[i]=Integer.parseInt(token.nextToken());
 

homework #2: 

主題:sort simulator

(1)實作insertion sort, merge sort, quick sort, heap sort

(2)由user指定陣列個數,並輸入元素內容,再指定sort方式

(3)進行sort時,將排序過程(陣列內容變化)顯示於textarea(進行divide,以[]包含之,如[78 25 56][34 56 44] )

(4)GUI介面, applet


homework #3:  

主題:迴文判斷

(1)利用stack完成

(2)由user輸入字串,判斷是否為迴文

(2)迴文:

    abcdef9fedcba===>迴文

    abcdeffedcba===>迴文

    dssaadwerwe784===>不是迴文

 (3)GUI介面, applet

 **一周完成


homework #4:  

主題:simple basic language  simulator

Syntax:
  • 接受之variable:A~Z26
  • Basic Command:print, 指定敘述(++,--)
  • 接受Math expression,a+b*3, 56-4*9/2
  • Operator:+,-,*,/,^
  • Statement前加行號,可不按順序
Interpreter
  • §Load  ‘…bas命令:載入.bas程式檔,顯示於input
  • §run命令:行號順序,解譯程式,顯示於output .syntax error ,顯示訊息於output
  • §cls命令:清除memory程式,及所有variable
  • §quit:離開interpreter
Testing example for homework
10 a=10
20 c=30
31 d=15
25 print a,c,a*c,45/(5+9-2)*2
40 print d,a,c
45 print a=,a,c=,c

 


homework #5:  

主題:二多項式運算(相加,減,乘,除)

(1)利用single-linked list完成

(2)讀檔,亦可直接編輯

    34X^25-11x^5+22-55x^-5+77x^-11

    11x^5+22x^2+33x^-11

(2)GUI介面


homework #6:  

主題:文字檔中單字之交互參考(cross-reference)

(1)利用double-linked list完成

(2)讀文字檔進行單字之交互參考分析,結果依ASCII 列出

This is a book. that is a cake.

I like panda, she love pig.

a (1,3),(1,7)
book (1,4)
cake (1,8)
   
is (1,2)(1,6)
like (2,1)