//CrossRiverQuestion.java
公司主營業務:網站制作、網站建設、移動網站開發等業務。幫助企業客戶真正實現互聯網宣傳,提高企業的競爭能力。創新互聯建站是一支青春激揚、勤奮敬業、活力青春激揚、勤奮敬業、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰,讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創新互聯建站推出南皮免費做網站回饋大家。
import?java.util.ArrayList;
import?java.util.List;
public?class?CrossRiverQuestion?{
public?static?void?main(String[]?args)?{
CrossRiverQuestion?q?=?new?CrossRiverQuestion(5,?4);
q.solveQuestion();
}
private?int?peoNum;
private?int?savageNum;
private?ListNode?resultList?=?new?ArrayListNode();
public?ListNode?solveQuestion()?{
Node?n?=?new?Node(peoNum,savageNum,0,0,0,new?ArrayListInteger(),0,0);
boolean?dfsResult?=?dfs(n);
if(dfsResult)?{
resultList.add(0,n);
for(Node?node?:?resultList)?{
System.out.println("左岸傳教士:"+node.getLeftPeo()+"左岸野人:?"+node.getLeftSavage()+"?右岸傳教士:?"+node.getRightPeo()+"右岸野人:"+node.getRightSavage()+"船上傳教士:"+node.getOnBoatPeoNum()+"船上野人:"+node.getOnBoatSavageNum());
}
return?resultList;
}
return?null;
}
public?CrossRiverQuestion(int?peoNum,?int?savageNum)?{
super();
this.peoNum?=?peoNum;
this.savageNum?=?savageNum;
}
private?boolean?dfs(Node?n)?{
if(n.hasVisited())?return?false;
n.addCheckSum();
if(n.getLeftPeo()==0n.getLeftSavage()==0)?return?true;
if(n.getLeftPeo()0||n.getRightPeo()0||n.getLeftSavage()0||n.getRightSavage()0)?{
return?false;
}
if(n.getLeftPeo()n.getLeftSavage()n.getLeftPeo()0)?return?false;
if(n.getRightPeo()n.getRightSavage()n.getRightPeo()0)?return?false;
if(n.getCURR_STATE()==n.getStateBoatLeft())?{
Node?n1?=?new?Node(n.getLeftPeo()-1,n.getLeftSavage()-1,n.getRightPeo()+1,n.getRightSavage()+1,n.getStateBoatRight(),n.getNodesCheckSum(),1,1);
if(dfs(n1))?{
resultList.add(0,n1);
return?true;
}
Node?n4?=?new?Node(n.getLeftPeo()-2,n.getLeftSavage(),n.getRightPeo()+2,n.getRightSavage(),n.getStateBoatRight(),n.getNodesCheckSum(),2,0);
if(dfs(n4))?{
resultList.add(0,n4);
return?true;
}
Node?n5?=?new?Node(n.getLeftPeo(),n.getLeftSavage()-2,n.getRightPeo(),n.getRightSavage()+2,n.getStateBoatRight(),n.getNodesCheckSum(),0,2);
if(dfs(n5))??{
resultList.add(0,n5);
return?true;
}
}?
else?{
Node?n6?=?new?Node(n.getLeftPeo(),n.getLeftSavage()+1,n.getRightPeo(),n.getRightSavage()-1,n.getStateBoatLeft(),n.getNodesCheckSum(),0,1);
if(dfs(n6))?{
resultList.add(0,n6);
return?true;
}
Node?n7?=?new?Node(n.getLeftPeo()+1,n.getLeftSavage(),n.getRightPeo()-1,n.getRightSavage(),n.getStateBoatLeft(),n.getNodesCheckSum(),1,0);
if(dfs(n7))?{
resultList.add(0,n7);
return?true;
}
Node?n1?=?new?Node(n.getLeftPeo()+1,n.getLeftSavage()+1,n.getRightPeo()-1,n.getRightSavage()-1,n.getStateBoatLeft(),n.getNodesCheckSum(),1,1);
if(dfs(n1))?{
resultList.add(0,n1);
return?true;
}
Node?n4?=?new?Node(n.getLeftPeo()+2,n.getLeftSavage(),n.getRightPeo()-2,n.getRightSavage(),n.getStateBoatLeft(),n.getNodesCheckSum(),2,0);
if(dfs(n4))?{
resultList.add(0,n4);
return?true;
}
Node?n5?=?new?Node(n.getLeftPeo(),n.getLeftSavage()+2,n.getRightPeo(),n.getRightSavage()-2,n.getStateBoatLeft(),n.getNodesCheckSum(),0,2);
if(dfs(n5))??{
resultList.add(0,n5);
return?true;
}
}
return?false;
}
public?ListNode?getResultList()?{
return?resultList;
}
}
Node.java
import?java.util.ArrayList;
import?java.util.List;
public?class?Node?{
private?ListInteger?nodesCheckSum?=?new?ArrayListInteger();
private?int?leftPeo;
private?int?rightPeo;
private?int?leftSavage;
private?int?rightSavage;
private?int?CURR_STATE?=?0;
private?int?onBoatPeoNum?=?0;
private?int?onBoatSavageNum?=?0;
private?final?int?STATE_BOAT_LEFT?=?0;
private?final?int?STATE_BOAT_RIGHT?=?1;
public?Node(int?leftPeo,?int?leftSavage,?int?rightPeo,?int?rightSavage,?int?state,?List?checkSumList,?int?onBoatPeoNum,?int?onBoatSavageNum)?{
this.CURR_STATE?=?state;
this.leftPeo?=?leftPeo;
this.leftSavage?=?leftSavage;
this.rightPeo?=?rightPeo;
this.rightSavage?=?rightSavage;
this.nodesCheckSum.addAll(checkSumList);
this.onBoatPeoNum?=?onBoatPeoNum;
this.onBoatSavageNum?=?onBoatSavageNum;
}
public?int?getLeftPeo()?{
return?leftPeo;
}
public?void?setLeftPeo(int?leftPeo)?{
this.leftPeo?=?leftPeo;
}
public?int?getRightPeo()?{
return?rightPeo;
}
public?void?setRightPeo(int?rightPeo)?{
this.rightPeo?=?rightPeo;
}
public?int?getLeftSavage()?{
return?leftSavage;
}
public?void?setLeftSavage(int?leftSavage)?{
this.leftSavage?=?leftSavage;
}
public?int?getRightSavage()?{
return?rightSavage;
}
public?void?setRightSavage(int?rightSavage)?{
this.rightSavage?=?rightSavage;
}
@Override
public?String?toString()?{
return?leftPeo+","+leftSavage+","+rightPeo+","+rightSavage+","+CURR_STATE;
}
public?int?getCURR_STATE()?{
return?CURR_STATE;
}
public?void?setCURR_STATE(int?cURR_STATE)?{
CURR_STATE?=?cURR_STATE;
}
public?int?getStateBoatLeft()?{
return?STATE_BOAT_LEFT;
}
public?int?getStateBoatRight()?{
return?STATE_BOAT_RIGHT;
}
public?int?calcCheckSum()?{
return?1*getCURR_STATE()+10*getLeftPeo()+100*getLeftSavage()+1000*getRightPeo()+10000*getRightSavage();
}
public?void?addCheckSum()?{
int?checkSum?=?calcCheckSum();
nodesCheckSum.add(checkSum);
}
public?boolean?hasVisited()?{
int?sum?=?calcCheckSum();
for?(Integer?checkSum?:?nodesCheckSum)?{
if(checkSum==sum)?return?true;
}
return?false;
}
public?ListInteger?getNodesCheckSum()?{
return?nodesCheckSum;
}
public?int?getOnBoatPeoNum()?{
return?onBoatPeoNum;
}
public?void?setOnBoatPeoNum(int?onBoatPeoNum)?{
this.onBoatPeoNum?=?onBoatPeoNum;
}
public?int?getOnBoatSavageNum()?{
return?onBoatSavageNum;
}
public?void?setOnBoatSavageNum(int?onBoatSavageNum)?{
this.onBoatSavageNum?=?onBoatSavageNum;
}
}
人工智能(Artificial Intelligence)是計算機科學的一個分支,英文縮寫為AI。它是研究、開發用于模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的科學技術。(人工智能是一門技術)
Java是一門面向對象的編程語言,用來編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等。編程語言除了java,還有c++,phtyon等等。(java是一種編程語言)
在計算機領域,所有的技術都是依靠代碼來實現的,代碼是計算機工作的唯一指令。編程語言可以理解為操縱代碼的工具。
綜上所述,人工智能是可以用java做的,也可以用c++做,還可以用phtyon做。只是每種編程語言都有自己的特點,在不同的領域,每種語言都有各自的優劣勢,人工智能領域常用的是phtyon語言。
人工智能專業代碼是080717T
人工智能(Artificial Intelligence)是中國普通高等學校本科專業。人工智能,是一個以計算機科學為基礎,由計算機、心理學、哲學等多學科交叉融合的交叉學科、新興學科,研究、開發用于模擬、延伸和擴展人的智能的理論、方法、技術及應用系統的一門新的技術科學。
發展歷程
2018年4月3日,中國高校人工智能人才國際培養計劃啟動儀式在北京大學舉行。時任教育部國際合作與交流司司長許濤透露,教育部將進一步完善中國高校人工智能學科體系,在研究設立人工智能專業,推動人工智能一級學科建設。教育部在研究制定《高等學校人工智能創新行動計劃》,通過科教融合、學科交叉、進一步提升高校人工智能科技創新能力和人才培養能力。
2019年3月21日,教育部印發了《教育部關于公布2018年度普通高等學校本科專業備案和審批結果的通知》,經申報、公示、審核等程序,根據普通高等學校專業設置與教學指導委員會評議結果,并征求有關部門意見,確定新增審批專業名單。根據通知,全國共有35所高校獲首批「人工智能」新專業建設資格。
2020年2月21日,教育部印發了《教育部關于公布2019年度普通高等學校本科專業備案和審批結果的通知》,在新增備案本科專業名單中,“人工智能”專業新增最多。此外,“智能制造工程”“智能建造”“智能醫學工程”“智能感知工程”等智能領域相關專業,也同樣是高校的新增備案和新增審批本科專業名單中的熱門。
培養目標
以培養掌握人工智能理論與工程技術的專門人才為目標,學習機器學習的理論和方法、深度學習框架、工具與實踐平臺、自然語言處理技術、語音處理與識別技術、視覺智能處理技術、國際人工智能專業領域最前沿的理論方法,培養人工智能專業技能和素養,構建解決科研和實際工程問題的專業思維、專業方法和專業嗅覺。
課程體系
《人工智能、社會與人文》、《人工智能哲學基礎與倫理》、《先進機器人控制》、《認知機器人》、《機器人規劃與學習》、《仿生機器人》、《群體智能與自主系統》、《無人駕駛技術與系統實現》、《游戲設計與開發》、《計算機圖形學》、《虛擬現實與增強現實》、《人工智能的現代方法I》、《問題表達與求解》、《人工智能的現代方法II》、《機器學習、自然語言處理、計算機視覺等》。
發展前景就業方向實際應用:
機器視覺,指紋識別,人臉識別,視網膜識別,虹膜識別,掌紋識別,專家系統,自動規劃,智能搜索,定理證明,博弈,自動程序設計,智能控制,機器人學,語言和圖像理解,遺傳編程等。考研方向計算機科學與技術、軟件工程、人工智能
能夠使用計算機表達的算法,就是可以轉換為數學語言來描述。謂詞演算其實就是將事物歸類,具體的說就是將A和B兩個事物的共同點進行歸納,并下一個數學定義來描述這個共同點。如果下一個輸入的事物如C,就對C進行判斷,看C是否符合A和B的共同點,如果是則C與A和B同屬于這一類。
如一個簡單的一元謂詞:
定義1:樹都有樹葉。
定義2:A是樹;
定義3:B與A是同一類植物;
則可知B是樹并且有樹葉。
其實謂詞演算就是對于數學包含關系的判斷。
如果體現在編程中,就是變量的對比,轉換,替換和傳遞等。
文章題目:java人工智能源代碼 java做人工智能嗎
標題路徑:http://vcdvsql.cn/article44/doiciee.html
成都網站建設公司_創新互聯,為您提供商城網站、面包屑導航、動態網站、網站內鏈、、軟件開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯