JAVA1到100之間的所有奇數(shù) 一道java面試題,20億數(shù)字的文本排序,如何取前100?
一道java面試題,20億數(shù)字的文本排序,如何取前100?因?yàn)檫@是一個(gè)Java問題,所以這是典型的TOPK問題。首先取前100個(gè)數(shù)字構(gòu)建一個(gè)最小堆,然后依次從堆的頂部插入剩余的數(shù)字,同時(shí)調(diào)整堆。堆中最
一道java面試題,20億數(shù)字的文本排序,如何取前100?
因?yàn)檫@是一個(gè)Java問題,所以這是典型的TOPK問題。首先取前100個(gè)數(shù)字構(gòu)建一個(gè)最小堆,然后依次從堆的頂部插入剩余的數(shù)字,同時(shí)調(diào)整堆。堆中最后100個(gè)元素就是結(jié)果??臻g復(fù)雜度是k,時(shí)間復(fù)雜度是nlogk
可以被2整除的整數(shù)是偶數(shù),不能被2整除的整數(shù)是奇數(shù)。I%2==
1?“奇數(shù)”:“偶數(shù)”如果我是負(fù)數(shù),結(jié)果是偶數(shù)。Java余數(shù)(%)算法代碼如下://divideddivisor divisor divisor public static int maintainer(int dividedend,int divisor){return dividedend-dividedend/divisor*divisor}所以當(dāng)您輸入-1時(shí),結(jié)果是-1,它不等于1,所以判斷為偶數(shù)。因?yàn)樗梢耘袛嗨欠袷桥紨?shù),I%
2==0?“偶數(shù)”:“奇數(shù)”Java是一種面向?qū)ο蟮木幊陶Z言,可以編寫跨平臺(tái)的應(yīng)用程序。Java技術(shù)具有良好的通用性、高效性、平臺(tái)可移植性和安全性。它廣泛應(yīng)用于PC機(jī)、數(shù)據(jù)中心、游戲機(jī)、科學(xué)超級(jí)計(jì)算機(jī)、手機(jī)和互聯(lián)網(wǎng)。同時(shí),它擁有世界上最大的專業(yè)開發(fā)者社區(qū)。
如何判斷一個(gè)數(shù)是奇數(shù)還是偶數(shù)?
①首先,你需要知道如何判斷奇數(shù)和偶數(shù)。你可以通過取2的余數(shù)直接判斷奇數(shù)和偶數(shù)。偶數(shù)取2的余數(shù)為0,奇數(shù)取2的余數(shù)為1。你知道判斷邏輯程序其實(shí)很簡(jiǎn)單。接下來,您可以使用java實(shí)現(xiàn)②//公共字符串檢查(int a,int b,int c){if(checkodd(a)checkodd(b)checkodd(c)==2){return “yes”}return “no”}//如果是奇數(shù),則輸出1,否則輸出0 static int checkodd(int i){return i%2}
public static void main(string[]args){系統(tǒng)輸出打?。ā?00以內(nèi)的奇數(shù)都是:”)for(int i=0 i< 100 i){if(i%2!= 0){ 系統(tǒng)打?。╥ “t”)}}