當前位置:首頁 » 操作系統 » 搞演算法的

搞演算法的

發布時間: 2022-04-11 19:05:39

1. 如何向親戚朋友,解釋自己是搞演算法

有些人覺得演算法競賽很有內容,比工程甚至普通的研究還有難度。我覺得這個是比較方法不太合適,寫個小爬蟲、做個個人網站、弄個C--編譯器,這種入門的東西當然簡單,但是我們搞競賽的時候入門的是什麼?A+B?高精度加減法?一樣水的很。你不能拿一個領域高級的東西去和另外一個領域入門的東西比。搞競賽搞得極致的巨巨當然很厲害,但他們身上不是只有競賽選手這么一個標簽,他們的成就也不是只靠搞競賽就搞出來的。況且,就像碼農群體大多是每天死於業務邏輯的搬磚工,科研群體很多時候都是浪費咖啡的灌水機一樣,競賽選手這個群體,更多的人是那些做不出來題的,讓大家拿金牌銀牌的那個基數(不要看不起基數,要是有一天這些基數決定不參加競賽了,大家一起玩完)。如果說搬磚灌水還填補了一些巨巨大牛沒有時間去做的東西,萬一銅鐵牌回家,除了鍛煉了自己的能力,我們敢說我們創造了什麼東西嗎?不能說麗潔姐姐搞過競賽,你也搞過競賽,你就搞過麗……(不對劃掉)你就也是麗潔姐姐這個水平了。我們是競賽選手,是演算法愛好者,在演算法上有了入門的機會,不去想著有朝一日去建模沒有人解決好的問題,也不想著將來如何去處理許多人想也不敢想的復雜或是大量的數據,過早的給自己固化一個標簽,滿足於這種答題的模式,我真的是覺得非常可惜。

利益相關:一個內心深處其實還是隱約的想搞演算法,但是清楚自己不是那塊料,省隊都進不去,算上邀請賽才敢說自己金銀銅鐵都拿過的退役OI/ICPCer

2. 搞演算法的都是高手,搞開發的都是沒腦子,只會復制代碼這觀點對嗎

用來解決問題的方法都是演算法,搞開發的也是把現實的問題用代碼解決!可能每個人的解決辦法都不一樣,這樣就有了不同的演算法了!不一定是些出很深的演算法才是演算法!

3. 計算機科學與技術是不是就是搞演算法的

計算機科學與技術是大學本科開設的理論性的專業。而計算機應用技術時專科兒大學開設的理論性專業。說白了第一個專業是高分大學的第二個專業是低分大學的。都是學理論知識的前者更加側重的是它的實用性和實踐性學習的時候強調實踐和成效應用方面有更加嚴格的要求後者的學術性和知識性會更加的側重你學習的時候可以一門是主修一門指定選修或者是選修看來你對這方面不是很清楚。我想告訴你一般大學里指的計算機專業都是了解整個計算機體系而設立的。部分大學會開設專門偏向軟體編寫的軟體工程專業。你所說的計算機應用這個東西只能作為一項專門的技術存在,比如瑪雅,AUTOCAD這種都是以課程的身份存在,其本身不能單獨成為一個專業。

4. 搞演算法(圖像識別,深度學習)必須要懂C/C++嗎

由於圖像識別、深度學習這方面已經有許多人做了基礎性工作,他們提供的程序或者庫都是利用c或c++形式提供的,或者是類似的調用介面,因此要利用這些庫、將這些基本演算法結合到自己的工程中來,需要c和c++的知識
演算法應當是可移植的,同時又不能離硬體太遠。可移植的特點是要求編程語言具備可移植性、通用性,c或c++是比較好的載體;所謂離硬體不太遠,是因為要在演算法優化方面有需求時,需要針對硬體特點,或者硬體提供的能力,做到發揮演算法的最大效能,由於c語言可以很好地結合匯編語言和高級語言,因此在優化方面是比較靈活的。
如果大部分通用演算法都是用c或c++編寫的,為成為通用演算法,你有可能需要順應這一習慣,以便別人將你的演算法結合到他們的c或c++工程中去。
往往你的演算法是在別人編寫的現有演算法上改進得到,如果別人的演算法就是c或c++編寫的,你需要這方面的知識來消化別人演算法的思路,理解成熟演算法的意圖。

5. 如何做演算法研究

一、DSP與TI

為什麼提到電機控制很多人首先會聯想到DSP?而談到DSP控制總繞不過TI,首先DSP晶元是一種具有特殊結構的微處理器。該晶元的內部採用程序和數據分開的哈佛結構,具有專門的硬體乘法器,提供特殊的指令,可以用來快速地實現各種數字信號處理演算法。基於DSP晶元構成的控制系統事實上是一個單片系統,因此整個控制所需的各種功能都可由DSP晶元來實現。因此,可以減小目標系統的體積,減少外部元件的個數,增加系統的可靠性。優點是穩定性好、精度高、處理速度快,目前在變頻器、伺服行業有大量使用。主流的DSP廠家有美國德州儀器(Texas Instruments,TI)、ADI、motorola、傑爾等其他廠商,其中TI的TMS320系列以數字控制和運動控制為主,以價格低廉、簡單易用、功能強大很是受歡迎。

二、常見的電機控制演算法及研究方法

1、電機控制按工作電源種類劃分:可分為直流電機和交流電機。按結構和工作原理可劃分:可分為直流電動機、非同步電動機、同步電動機。不同的電機所採用的驅動方式也是不相同的,這次主要介紹伺服電機,伺服主要靠脈沖來定位,伺服電機接收到1個脈沖,就會旋轉1個脈沖對應的角度,從而實現位移,因此,伺服電機本身具備發出脈沖的功能,所以伺服電機每旋轉一個角度,都會發出對應數量的脈沖,同時又與伺服電機接受的脈沖形成了呼應,或者叫閉環,進而很精確的控制電機的轉動,從而實現精確的定位,可以達到0.001mm。伺服電機相比較普通電機優勢在於控制精度、低頻扭矩,過載能力,響應速度等方面,所以被廣泛使用於機器人,數控機床,注塑,紡織等行業
三、PWM控制及測試結果

脈沖寬度調制是利用微處理器的數字輸出來對模擬電路進行控制的一種非常有效的技術,廣泛應用在從測量、通信到功率控制與變換的許多領域中,脈沖寬度調制是一種模擬控制方式,其根據相應載荷的變化來調制晶體管基極或MOS管柵極的偏置,來實現晶體管或MOS管導通時間的改變,從而實現開關穩壓電源輸出的改變

6. 做演算法的,怎麼快速提高編程能力

先好好讀書,這里我推薦The art of unix programming,我自己便是看完這書後技術能力才有質的變化。
然後,減少看微博、博客、知乎等的時間,最好是徹底不看,這些資訊的網站是非常浮躁的,很難學到真正的東西。
學門新語言,比方說go, python, ruby, haskell等等,然後用這門語言去做一個開源項目,比方說,一個ORM。然後,再去看這門語言的成功項目的源碼。看看自己寫的跟別人的不足是什麼,然後,再把自己的項目重新實現一遍。自覺略有所得之後換個方向,比方說模板,再搞個開源項目。伺服器後端的MVC各搞一次,還可以再去搞前端的。
最後,心態要好,不要急於求成,欲速則不達。修煉一年能有小成就不錯的了~

7. 搞架構和搞演算法,哪個更牛一些

我以為,這個問題的答案不是「誰更牛」,而是應該(甚至必須)二者得兼。
先說說機器學習演算法的重要性。最近十年的IT行業是互聯網主導的。互聯網服務之所以稱為服務,就是要能了解、理解、服務好用戶。傳統行業如銀行、醫院、商場也是服務行業。互聯網服務和他們的區別在於——利用機器智能,回答長尾問題,服務大眾——用戶不需要是衣冠楚楚的就可以P2P貸款。這是人工智慧技術最近十年在互聯網行業發展起來的核心原因。也是大家能看到所謂」演算法工程師」的收入比其他工種相對高的原因。
人工智慧演算法和大學專業課「演算法」有一個本質區別:後者教大家如何用「人腦」,利用人的知識,想明白解法,然後描述成代碼,讓機器照著執行;而前者是讓機器去從數據里「學習」或者「總結」知識,然後來解決問題。
要想互聯網服務質量過人一等,能回答好的問題要更多,所以知識的量得更大,也就是說要能從更多數據中學習和歸納知識。這就是「大數據」的核心價值,也是「架構」技法的重要性。
用Python+NumPy、R、Matlab、Octave、甚至一台機器里的一兩個GPU、不具備容錯能力從而只能覆蓋幾十台機器的MPI,在很多情況下都不能搞定」大數據學習「問題。讀書的時候,用這些工具只是方便大家對人工智慧演算法盡快有個了解。實際情況是,最好在工作前,至少在工作中,要能掌握large scale system開發的思想和方法。
大數據學習支撐互聯網行業突破已經至少十年了。它悄悄帶來了很多革命性的變化:tenure的知名人工智慧教授們也面臨中年危機了;其中有遠見有執行力的人尋求進入公司發力(入Andrew Ng);有業界經驗的人開始進入大學執教(如Alexander Smola);架構高手跨界進入人工智慧演算法領域(如Jeff Dean);大數據存儲和處理相關的開源項目的興盛(如Hadoop、Spark、Mesos、CoreOS、Kubernetes。
如果在這樣的大潮前還看不到兩者得兼的必要性,還在二者選一,甚至通過迴避技術完備去談」商業模式上的突破「,在沒有做好log信息和第三方數據收集時自稱」我們沒有大數據「,都可能讓我們在不遠的未來會碰到尷尬。

8. 計算機搞演算法的去公司里都作什麼

做演算法的一般邏輯和空間能力較好,低點的做軟體開發,好的做架構搭建,也就是架構師,如果涉及資料庫,一般是數據檢索優化,演算法優化,保障網站程序能夠快速響應客戶需求,較快捷從資料庫取出數據。

9. 搞演算法好還是搞開發好,演算法就是純數學

數學是一門工具性很強的科學,它與別的科學比較起來還具有較高的抽象性等特徵。起初是計算機科學工作者離不開數學,而數學工作者認為計算機對他們可有可無,但是現在是互相都離不開對方了,計算機也提高了數學工作者在人們心目中的地位,大部分的數學工作者開始認識到計算機的重要性,並越來越多地進入到計算機領域發揮作用。但是隨著人工智慧、GPS(全球定位系統)等飛速的發展和計算機運算性能飛躍性的提升,計算機的優勢越來越深入到思維領域,於是計算機將高深的數學理論用到實際中來,十分有效地解決了許多實際問題,例如著名難題四色問題就是被計算機證明的。問題的求解過程中有許多具有實用價值的數學分支如分析幾何、小波分析、離散數學、仿生計算、數值計算中的有限單元方法等。它讓人們知道計算機程序設計結合的就是數學知識和數學思想。
編程是基於數學模型的基礎上面的,所以,數學是計算機科學的主要基礎,以離散數學為代表的應用數學是描述學科理論、方法和技術的主要工具。編程中不僅許多理論是用數學描述的,而且許多技術也是用數學描述的。從計算機各種應用的程序設計方面考察,任何一個可在存儲程序式電子數字計算機上運行的程序,其對應的計算方法首先都必須是構造性的,數據表示必須離散化,計算操作必須使用邏輯或代數的方法進行,這些都應體現在演算法和程序之中。此外,到現在為止,演算法的正確性、程序的語義及其正確性的理論基礎仍然是數理邏輯,或進一步的模型論。真正的程序語義是模型論意義上的語義。於是編程思想運行的嚴密性、學科理論方法與實現技術的高度一致是計算機科學與技術學科同數學學科密切相關的根本原因。從學科特點和學科方法論的角度考察,編程的主要基礎思想是數學思維,特別是數學中以代數、邏輯為代表的離散數學,而程序技術和電子技術僅僅只是計算機科學與技術學科產品或實現的一種技術表現形式。
(一)數學在計算機領域的發展
如今形形色色的,都與數學有必然的聯系,它們相互相成。例如,邏輯學在學科中的應用從早期的數理邏輯發展到今天的程序設計模型論;數學在學科中的應用從早期的抽象代數發展到今天的圖形學、工程問題方面;幾何學的應用從早期的二維平面計算機繪圖發展到今天的三維動畫系統,並在與復分析的結合中產生了分形理論與技術;在游戲、圖形開發中引用了線性代數中大量的坐標變換,矩陣運算;在數據壓縮與還原、信息安全方面引入了小波理論、代數編碼理論等。
(二)編程的思維定式
編程的思維定式決定了一個人編程的水平,在編程過程中,數學思維清晰,編寫出來的程序讓人耳目一新。結合教學,通過調查分析,了解到超過85%的學生,他們在編程時是根據語法而編寫程序,完全脫離了編程的思維,這種思維定式使得他們編寫的程序相當糟糕,沒有一點邏輯。
之所以造成這種編程的思維,是因為他們平時對數學思維的培養不夠重視。很多學計算機的學生想:學高數,這有什麼用?學線性代數有什麼用?學離散數學,有什麼用?於是他們很少去上這些課,馬馬虎虎,整天悶在寢室里,玩玩游戲,裝裝,看看C語言。只知道概率問題和矩陣知識在其它課程上起到了互補作用,學的不是很深。但是當他們看到<<數據結構和演算法>>時,感到其中的內容對他們而言感覺相當的艱澀難懂,這時他們就隱約感覺到了數學思維的作用了。在此之前,他們不僅荒廢了大學的高等數學,連初中的初等數學也忘的好多,當他們進行高抽象思維時,確實感覺自己的思維已經很遲鈍了。學計算機的學生之所以覺得《數據結構》這門課程很難,就是因為他們的數學思維鍛煉的不夠!其實生活中有很多這樣的例子:對於一個剛畢業的,編應用的大學生,在編程中用到《線性代數》的矩陣時,恐怕便會想,在大學把線性代數學好就好了;當在程序中用到動態鏈表、樹時,恐怕也會想「在大學時花點時間去學《數據結構》,會多麼的有意義」;當學數據結構時,恐怕也會想「學《離散數學》時為什麼要逃那麼多的課,要不然學離散的時候就會很輕松」。所以數學思維不夠,在編程會有很多的疑慮,顯的有點縮手縮尾,而且寫的程序也不夠健全,缺乏邏輯。
(三)編程與數學思維的融合
很多專業人士覺得數學和編程能力就像太極和拳擊,編程能力很強就好比出拳速度很快很重,能直接給人以重擊;數學很好的話就好像一個太極高手,表面上看沒有太大的力量但是內在的能量是更強大的,但是好的拳擊手是越年輕越好,而太極大師都是資歷越深越厲害。所以數學是成就大師的必備能力,雖然很多學生看上去感覺沒有什麼用途,但是到了一定的水平之後就會體會它的力量了。

熱點內容
21款奧迪a6配置有哪些 發布:2024-11-15 11:03:20 瀏覽:119
sql內連接外連接 發布:2024-11-15 11:03:19 瀏覽:600
學完python基礎 發布:2024-11-15 11:01:56 瀏覽:62
捏泡膠解壓 發布:2024-11-15 10:55:07 瀏覽:802
linux文件最後一行 發布:2024-11-15 10:44:11 瀏覽:612
怎麼根據序列號查配置 發布:2024-11-15 10:31:52 瀏覽:348
mysql查看資料庫位置 發布:2024-11-15 10:25:16 瀏覽:439
需要學Python 發布:2024-11-15 10:23:41 瀏覽:836
如何製作安卓平板軟體 發布:2024-11-15 10:23:39 瀏覽:215
手機忘記密碼被鎖預示著什麼 發布:2024-11-15 10:22:15 瀏覽:193