搜尋
首頁JavaJava入門什麼是java演算法

什麼是java演算法

Feb 03, 2020 am 11:45 AM
java演算法

什麼是java演算法

什麼是java演算法 

#演算法是指解題方案的準確且完整的描述,是一系列解決問題的清晰指令,java演算法就是採用Java語言來實作解決某一問題的清晰指令。

演算法的特徵:

輸入性:有零個或多個外部量作為演算法的輸入

輸出性:演算法產生至少一個量作為輸出

確定性:演算法中每個指令清晰,無歧義

#有窮性:演算法中每個指令的執行次數有限,執行每條指令是時間也有限

可行性:演算法原則上能夠精確的運行,而且人們用紙和筆做有限次運算後即可完成

程式:演算法用某種程式設計語言的具體實現,程式可以不滿足又窮性

演算法的四個標準:

#正確性:在合理的資料輸入下,能在有限時間內得出正確的結果

可讀性:應易於人的理解,易於調試

健壯性:具備檢查錯誤和對錯誤進行適當處理的能力

效率:演算法執行時所需電腦資源的多寡,包括運行時間和儲存空間

演算法的描述形式:1、自然語言  2、演算法框圖法  3、偽代碼語言  4、高階程式設計語言

演算法設計的一般過程:

1、理解問題

2、預測所有可能是輸入

3、在精確解和近似解間做選擇

4、確定適當的資料結構

5、演算法設計技術

6、描述演算法

##7、追蹤演算法

8、分析演算法的效率

9、根據演算法寫程式碼

#以下是Java實作的演算法:冒泡排序

/**
 * 冒泡排序
 */
public class BubbleSort1 {
    public static void BubbleSort(int[] arr) {
        boolean flag = true;
        while(flag){
            int temp;//定义一个临时变量
            for(int i=0;i<arr.length-1;i++){//冒泡趟数,n-1趟
                for(int j=0;j<arr.length-i-1;j++){
                    if(arr[j+1]<arr[j]){
                        temp = arr[j];
                        arr[j] = arr[j+1];
                        arr[j+1] = temp;
                        flag = true;
                    }
                }
                if(!flag){
                    break;//若果没有发生交换,则退出循环
                }
            }
        }
    }
    public static void main(String[] args) {
        int arr[] = new int[]{1,6,2,2,5};
        BubbleSort.BubbleSort(arr);
        System.out.println(Arrays.toString(arr));
    }
}

相關文章教學推薦:

java入門教學

以上是什麼是java演算法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具