日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

【算法与数据结构】一道检测inversion count的初级算法

發(fā)布時(shí)間:2025/4/5 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【算法与数据结构】一道检测inversion count的初级算法 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

(轉(zhuǎn)載請(qǐng)注明出處:http://blog.csdn.net/buptgshengod

1.題目? ??

? ? ? ?這是一道檢測(cè)inversion count的算法。它將檢測(cè)輸入序列中反序輸入的個(gè)數(shù),即檢測(cè)其中有幾對(duì)A[i] > A[j], i < j

比如輸入4,3,2,1,輸出應(yīng)該為3+2+1=6.。 因?yàn)?#xff1a;

1. ?4比3,2,1大,但4在輸入序列中是第一位,比3,2,1的index都小

2. ?3比2,1大

3. ?2比1大

2.代碼部分

/*

?*

解:用冒泡法將序列從小到大排序,計(jì)算一共移動(dòng)多少位,就有幾個(gè)這樣的序列對(duì)。時(shí)間復(fù)雜度:O(n2)

?*/


public class Test {

?public static void main(String[] args){

int i,j;

int t;

int number=0;

final int n=4;

int[] list = new int[n];

?

System.out.println("隨機(jī)產(chǎn)生數(shù)列");

for(i=0;i<n;i++){

list[i]=(int)( Math.random()*100);

? ? System.out.print(list[i]+",");

}

?

?

for(i=0;i<n-1;i++){

for(j=0;j<n-1;j++){

if(list[j+1]>=list[j]){

?

}

else{

t=list[j+1];

list[j+1]=list[j];

list[j]=t;

number++;

}

}

}

System.out.println();?

System.out.println("有 "+number+" 對(duì)A[i] > A[j], i < j");?

?

?}

}


總結(jié)

以上是生活随笔為你收集整理的【算法与数据结构】一道检测inversion count的初级算法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。