Java實現數據排序算法
數據結構描述的是數據之間的關系。C++數據結構的存儲方式有順序、鏈接、索引、散列等形式,對數據的處理通常包括輸入、輸出、查找、更新、排序、插入、刪除等,當數據的存儲方式不同時,相應的處理實現算法也不盡相同。如何采用一種簡便明了的方法分析C++的數據結構特點及各種存儲方式、處理方式之間的異同成為了計算機應用專業教育的一個難點。針對遠程開放教學學生大多數通過網絡課件自學這一特點,采用當今流行的跨平臺程序設計語言java實現對C++數據結構算法的模擬,可以很好地解決對數據存儲方式、處理方式的具體化問題。利用java語言程序設計的靈活性及交互性,實現數據的動態輸入,自動、分步、循環執行存儲處理過程,并在internet上發布。
1、實現的功能
使用Java技術編寫的Java applet 程序,在網頁上發布,可以方便與用戶交互,用戶可以初始化算法元素,可以選擇執行方式(自動執行或單步執行);可以起止程序的執行;顯示當前程序運行的狀態;同步顯示算法描述與算法過程的變化。這里我們以直接選擇排序(升序)為例子,來分析采用Java技術實現算法的摸擬演示。效果圖:
說明:"直接排序數據",文本框用來接收用戶輸入的數據。"排序數據個數",顯示用戶輸入的數據數。"當前最小值",當前程序執行時的最小值。"運行狀態",顯示當前程序運行狀態。"確定輸入",接收用戶的輸入。"自動執行",根據用戶的輸入自動進行排序演示。"單步執行",根據用戶的輸入,用戶可以手動控制程序的執行過程。"結束演示",結束演示,等待下一次演示。"列表框",在程序執行過程中與圖形變化同步顯示相對應的算法描述。