導航:首頁 > 源碼編譯 > 數據結構與演算法分析java習題答案

數據結構與演算法分析java習題答案

發布時間:2025-07-12 01:59:56

㈠ 數據結構和java高手請進!在線等1

這個只能用字元串 處理了。。
我早期進公司的面試題
哈哈
public class VeryBigNumAdd {
public static void main(String[] args) {
String a="1223232";
for(int i=a.length()-1;i>=0;i--)
{
System.out.print(a.charAt(i));
}
VeryBigNumAdd vbn=new VeryBigNumAdd();
String a="";
String b="";
String result=vbn.doAdd(a,b);
System.out.println("result:"+result);
}
/**
*
* @param a 加數字元串1
* @param b 加數字元串2
* @return 結果字元串
* 分析:
* 1、取得兩個字元串的長度
* 2、把兩個的長度做比較,並得出較長的長度,及較短的長度
* 3、把長度較短的加數字元串,在左面補0,使之與較長的字元串一樣長
* 4、從最高位,一個個數的取出來相加,當然首先得轉換為整型
* 5、設置進位,如果兩個數相加及加上進位大於等於10,並且這不是最左邊一個字元相加,相加結果等於
* (取出1+取出2+進位)-10,並把進位設為1;如果沒有大於10,就把進位設為0,如些循環,把
* 相加的結果以字元串的形式結合起來,就得到最後的結果
*/
String doAdd(String a,String b)
{
String str="";
int lenA=a.length();
int lenB=b.length();
int maxLen=(lenA>lenB) ? lenA : lenB;
int minLen=(lenA<lenB) ? lenA : lenB;
String strTmp="";
for(int i=maxLen-minLen;i>0;i--)
{
strTmp+="0";
}
//把長度調整到相同
if(maxLen==lenA)
{
b=strTmp+b;
}else
a=strTmp+a;
int JW=0;//進位
for(int i=maxLen-1;i>=0;i--)
{
int tempA=Integer.parseInt(String.valueOf(a.charAt(i)));
int tempB=Integer.parseInt(String.valueOf(b.charAt(i)));
int temp;
if(tempA+tempB+JW>=10 && i!=0)
{
temp=tempA+tempB+JW-10;
JW=1;
}
else
{
temp=tempA+tempB+JW;
JW=0;
}
str=String.valueOf(temp)+str;
}
return str;
}
}

㈡ Java 與 演算法+數據結構 (100分)

說數據結構沒用那是不可能的,但是要看你做什麼了。

比如說你要血java,如果你想搞網站方面的話就簡單了。

數據結構基本可以不用學,因為在web應用中,能用到的演算法的地方少之又少,幾乎就那麼幾個,想記不住都難。

但是如果你要往軟體方面和手軟方面發展的話就要學一部分了,但是這東西學是學不到的,能學到的只不過是思路,到時候自己發揮一下,想個演算法就行了,演算法這東西說難不難,難的東西有,但是沒有你能用到的。

像你這樣的情況我想說兩點:

首先,說你想從事演算法類的工作,那麼選擇什麼樣的語言都是一樣的,演算法肯定有,但是用到的都不多。剛進公司的時候一般是用不到演算法的,因為演算法都是別人想的,你也許有好的演算法,但是別人不一定採用,但是你的演算法基礎不要丟掉,因為等你當了項目經理後這個是必不可少的。

其次,你要知道,在學計算機的路上,很少有人能學什麼就做什麼,大家都在被社會潮流推動,想要不掉隊就只能隨波逐流。因為畢竟我們都不想一輩子寫代碼。大家都是拿這東西做個跳板。

學java的路很長,但是也很有趣,希望你能學好。我想以你的演算法基礎,以後想成為專業精英不是問題。加油吧。

㈢ 請問,怎麼有步驟地學好數據結構與演算法JAVA語言這門專業

1. "我想學好基礎的數據結構和演算法! "
不多說,有這心就往下看。

2. "我應該准備些什麼? "
a. 這本橙書: 《演算法 第四版》
--亞馬遜中文版: amazon.cn 的頁面
--線上資源: Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne
b. 注冊Coursera, 依次加入這2門課: <演算法, 第一部分> <演算法, 第二部分>
Part 1: https://www.coursera.org/course/algs4partI
Part 2: https://class.coursera.org/algs4partII-006
如果沒開課, 就先標記, 這樣開課時會通過郵箱提示你.

3. "我應該做些什麼? "
先熟讀書內1.1和1.2, 最好把課後習題都做一做. 網站上開課後(即使已經開課幾周了, 沒關系), 跟住上課內容: 課本知識 + 視頻內容 + 課件重點+ Exercises (獨立完成且滿分) + Programming Assignments (獨立完成且盡量滿分) + Job Interview Questions. 從Part 1到Part 2, 跟住, 跟住, 跟住!

關於做書後練習題,參見:
演算法 第四版(algorithms 4th edition ) 這本書有配套的習題答案嗎? - 孟祥豐的回答

4. "我學完了呢!"
再去跟隔壁斯坦福的演算法公開課, 他還給證書! 因為參考書籍基本上就是是《CLRS》, 所以也就是強迫自己去仔細研讀演算法導論.
---課程名稱:
<演算法設計與分析, 第一部分>
<演算法設計與分析, 第二部分>
---課程地址
Part 1: https://www.coursera.org/course/algo
Part 2: https://www.coursera.org/course/algo2

㈣ Java演算法與數據結構代碼

第1題:我給你搭建演算法框架,具體需求,你只需往裡面寫Code即可:

publicclassProgram{

privatestaticfinalintN=6;
publicstaticvoidmain(String[]args){
Nodehead=newNode(-1,null);//定義頭指針,帶頭結點的單鏈表
for(inti=0;i<N;i++){
Nodee=newNode(i+1,null);
tailInsert(head,e);
}

//Test
Nodep=head;
while(p.getNext()!=null){
p=p.getNext();
}
}

/**
*@paramhead實施尾插法演算法的單鏈表頭指針
*@parame所需的元素
*/
privatestaticvoidtailInsert(Nodehead,Nodee){
Nodep=head;
while(p.getNext()!=null){
p=p.getNext();//尋訪單鏈表,直至到達單鏈表末尾
}
//實施尾插法
p.setNext(e);
}
}

classNode{
privateintid;//編號
privateNodenext;//單鏈表後繼指針
privateStringvote;//選票

publicNode(){}
publicNode(intid,Nodenext){
super();
this.id=id;
this.next=next;
}
publicNode(intid,Nodenext,Stringvote){
super();
this.id=id;
this.next=next;
this.vote=vote;
}
@Override
publicStringtoString(){
return"Node[id="+id+",next="+next+"]";
}
publicintgetId(){
returnid;
}
publicvoidsetId(intid){
this.id=id;
}
publicNodegetNext(){
returnnext;
}
publicvoidsetNext(Nodenext){
this.next=next;
}
}

第2題:參看我以前的回答:https://..com/question/431512924412893084

演算法思想已經寫的清楚得不能在清楚了。轉成Java就是小菜一碟。

閱讀全文

與數據結構與演算法分析java習題答案相關的資料

熱點內容
十字軍聖印審判命令聖印宏 瀏覽:308
輕量雲伺服器有顯卡 瀏覽:144
linux文件添加內容 瀏覽:223
永恆之塔單機命令 瀏覽:216
加密貨幣好轉嗎 瀏覽:768
如何將手機上的app發給微信好友 瀏覽:491
解壓文件無效 瀏覽:86
用戶畫像數據建模演算法 瀏覽:848
假睫毛濃密加密 瀏覽:784
ppt教程pdf 瀏覽:112
北京加密狗廠家 瀏覽:869
大地超app怎麼更改個人信息 瀏覽:485
excel自動被加密 瀏覽:180
linux命令行分號 瀏覽:730
linux命令執行文件 瀏覽:169
模擬飛行解壓 瀏覽:339
程序員必讀定律 瀏覽:660
長沙保衛戰薛岳下命令是哪一集 瀏覽:416
hp伺服器如何進iLO界面 瀏覽:142
固定ip伺服器如何加防火牆 瀏覽:235