it-swarm.asia

Programcılar için matematikle ilgili kanonik bir kitap var mı?

Ben kendi kendini yetiştirmiş bir programcıyım. Dürüst olmak gerekirse matematikte iyi değilim. Matematiksel becerilerimi geliştirmek için hangi tavsiyelerde bulunabilirsiniz, böylece diğer programcılarımda bu kadar güvensiz olmamam? Matematiksel becerilerimi geliştirmek için önerebileceğiniz adımlar veya yönergeler nelerdir?

En iyi uygulamaları, tasarım metodolojilerini ve programcılar için matematikle ilgili diğer yararlı bilgileri tanımlamak için fiili standart olan bir kitap var mı? Bu kitap onu özel kılan ne olacak?

51
adietan63

Hmm, söylediğinizden çok temel başlamak istiyorsunuz gibi görünüyor. Bu konuda kötü bir şey yok, ben de aynısını yaptım. Benim matematik çoğunlukla lise seviyesindeydi ve çoğu unutuldu.

Khan Academy ile başlayın, uygulama bölümüne gidin ve ne kadar uzağa gidebileceğinizi görün. Bu size neler yapabileceğiniz ve nereden öğrenmeye başlayacağınız konusunda iyi bir fikir verecektir.

Videoları izleme zahmetine girmeyin. En azından benim için videolar sadece öğrenmenin yavaş bir yolu ve Khan'lar çok sıkıcı. Temel matematik öğrenmek için birçok kaynak vardır. WikiBooks veya ck-12 gibi

Soru Math.StackExchange üzerinde yeterince tartışılıyor ve 'ücretsiz kaynaklar' veya 'ücretsiz kitaplar' aramak size çok fazla bilgi ve malzeme getirecek. 'Start' veya 'acemi' gibi arama terimleri için de aynı şey geçerlidir. Ya da orada kendi sorunuzu sorun. Bu, reddit'teki / r/math alt bölümünde de işe yarar. Orada, örneğin matematik öğrenmek için, daha fazla altküre bulacaksınız.

Çok pratik yap. Sadece bir kavramı anlamak ve bir sonrakine geçmek yeterli değildir. Uygulamak için kendinizi rahat hissetmelisiniz. Bölme ve çarpma işleminden memnun değilseniz yüzdeleri anlamayacaksınız (örnek olarak). Bu daha yüksek kavramlar için de geçerlidir. Bu yüzden Khan'daki uygulama bölümü videolardan çok daha değerli.

Programlamada olduğu gibi, toplulukla iletişim halinde olmak sizi motive edecektir. Sadece arada bir forumda oturum açın ve insanların ne hakkında konuştuklarını okuyun.

24
thorsten müller

Somut Matematik: Bilgisayar Bilimi Vakfı (2.Baskı) , matematiğin çeşitli alanlarını kapsayan iyi bir Matematik kitabı ve kitabın yararlı olabilecek bazı mizahları olması için benim seçimim olacaktır.

16
JB King

Paul'un Lamar Üniversitesi'nden Çevrimiçi Notlar gelir PDF Biçim. Hızlı başvuru için çok iyi ve her sayfada örnekler var. konu veya bir şey kavramak, ben bu siteye geri gelme eğilimindedir.

İşte set:

Cebir (Matematik 1314): Tam Notlar
İçindekilerin Listesi

  • Hazırlıklar - Üssel Özellikler, Rasyonel Üsler, Negatif Üsler, Radikaller, Polinomlar, Faktoring, Rasyonel İfadeler, Karmaşık Sayılar
  • Denklem ve Eşitsizlikleri Çözme - Doğrusal Denklemler, Kuadratik Denklemler, Kareyi Tamamlama, Kuadratik Formül, Doğrusal ve Kuadratik Denklemlerin Uygulamaları, Kuadratik Forma İndirgenebilir, Radikalli Denklemler, Doğrusal Eşitsizlikler, Polinom ve Rasyonel Eşitsizlikler, Mutlak Değer Denklemleri ve Eşitsizlikler.
  • Grafik ve Fonksiyonlar - Grafiklerin Çizgileri, Daireler ve Parçalı Fonksiyonlar, Fonksiyon Tanımı, Fonksiyon Gösterimi, Fonksiyon Kompozisyonu, Ters Fonksiyonlar.
  • Ortak Grafikler - Paraboller, Elipsler, Hiperboller, Mutlak Değer, Karekök, Sabit Fonksiyon, Rasyonel Fonksiyonlar, Vardiyalar, Yansımalar, Simetri.
  • Polinom Fonksiyonlar - Polinomların Bölünmesi, Polinomların Sıfırları/Kökleri, Polinomların Sıfırlarının Bulunması, Polinomların Çizilmesi, Kısmi Kesirler.
  • Üstel ve Logaritma Fonksiyonları - Üstel Fonksiyonlar, Logaritma Fonksiyonları, Üstel Fonksiyonları Çözme, Logaritma Fonksiyonlarını Çözme, Uygulamalar.
  • Denklem Sistemleri - İkame Yöntemi, Eliminasyon Yöntemi, Artırılmış Matris, Doğrusal Olmayan Sistemler.

Analiz I (Matematik 2413): ayrılmış

  1. İçeriklerin listesi
  2. Notlar
  3. Alıştırma Sorunları
  4. ygulama Sorunlarına Çözümler
  5. Atama Sorunları

    • Cebir/Trig İncelemesi - Trig Fonksiyonları ve Denklemleri, Üstel Fonksiyonlar ve Denklemler, Logaritma Fonksiyonları ve Denklemleri.
    • Limitler - Kavramlar, Tanım, Bilgi İşlem, Tek Taraflı Limitler, Süreklilik, Sonsuzluğu İçeren Limitler, L'Hospitals Kuralı
    • Türevler - Tanım, Yorumlar, Türev Formüller, Güç Kuralı, Ürün Kuralı, Bölüm Kuralı, Zincir Kuralı, Yüksek Mertebeden Türevler, Örtük Farklılaşma, Logaritmik Türev, Tetik Fonksiyonların Türevi, Üstel Fonksiyonlar, Logaritma Fonksiyonları, Ters Trig Fonksiyonları ve Hiperbolik Trig Fonksiyonları .
    • Türev Uygulamaları - İlgili Oranlar, Kritik Puanlar, Minimum ve Maksimum Değerler, Artan/Azalan Fonksiyonlar, Çekim Noktaları, Konkavlık, Optimizasyon
    • İntegrasyon - Tanım, Belirsiz İntegraller, Belirli İntegraller, İkame Kuralı, Belirli İntegrallerin Değerlendirilmesi, Analizin Temel Teoremi
    • İntegrallerin Uygulamaları - Ortalama Fonksiyon Değeri, Eğriler Arası Alan, Devrim Katıları, İş.

Matematik II (Matematik 2414) Tam Notlar

Matematik III (Matematik 2415) Tam Notlar

Doğrusal Cebir (Math 2318) Tam Notlar

Diferansiyel Denklemler (Math 3301) Tam Notlar

Siteyi geri kalan konu listeleri için kontrol edebilirsiniz.

10
phwd

Bunun bir kitap olmadığını anlıyorum, ama bence matematik hakkındaki düşüncelerinizi genişletmenin iyi bir yolu olabilir. Project Euler sorunları üzerinde çalışmayı deneyin .

Örneğin, ilki :

10'un altında 3 veya 5'in katları olan tüm doğal sayıları listelersek, 3, 5, 6 ve 9 alırız. Bu katların toplamı 23'tür.

1000'in altındaki 3 veya 5'in tüm katlarının toplamını bulun.

8
Peter K.

Kenneth Rosen'in Ayrık Matematik ve Uygulamaları . İyi bir teori ve uygulama dengesi ile birçok farklı konuyu (iyi bir Ayrık Matematik kitabında olduğu gibi) kapsar. Ayrıca, kapsanan kavramları oluşturan matematikçiler ve bilgisayar bilimcileri üzerinde birçok ilginç kenar çubuğu vardır.

8
Bill the Lizard

1000 ayrık matematik kitabı okurken iyi bir çözüm olsa da, zaman kısıtlaması varsa en uygun yol olmayabilir. Dışarıda ne kadar matematik olması gerektiğine dair bir lezzet istiyorsanız derine inerken, (cormen) Algoritma kitabının girişinin Ek A'sına bir göz atın: http://www.acmsolver.org/books/Introduction%20to % 20Algorithms,% 202.% 20Ed% 20-% 20Thomas% 20H.% 20Cormen.pdf

Ekleri okudum ve hangi matematik konularını daha fazla gözden geçirmem gerektiğini daha iyi kavradı. Ne bekleyeceğinizi öğrendikten sonra, şunlara göz atın:

http://www.Amazon.com/Journey-into-Mathematics-Introduction-Proofs/dp/0486453065/ref=sr_1_15?ie=UTF8&qid=1308591694&sr=8-15 enter image description here

Kanımca, nasıl kanıtlanacağını öğrenmek (özellikle indüksiyon yoluyla) analiz algoritmalarını anlamak için bir mihenk taşıdır. Ne yazık ki, çoğu algoritma ve hatta CS matematik dersleri kanıtlara çok fazla odaklanmıyor. zaten bu konuda yetkin olduğunuzu varsayarlar, bu yüzden birkaç sayfanın ötesine geçmezler. Matematik kitabına yolculuk çok küçük ve okunması kolay. CS problemlerini ve matematiksel yönlerini de kullanır. Öğrenilecek diğer iyi konular matris aritmetiği, olasılık, sayıyor ve grafik teorisi da.

Diğer iki büyük ders kitabı: Ayrık Matematik ve EPP'den (favorim) uygulaması ve diğeri Rosen'den.

http://www.Amazon.com/Discrete-Mathematics-Applications-Susanna-Epp/dp/0534359450/ref=sr_1_4?ie=UTF8&qid=1308591784&sr=8-4

http://www.Amazon.com/Discrete-Mathematics-Applications-Kenneth-Rosen/dp/0073229725/ref=sr_1_1?ie=UTF8&qid=1308591784&sr=8-1

" Somut Matematik" başlıklı ders kitabını okumaktan zevk almadım ama her zaman bu konuda iyi şeyler duydum.

4
Armando

CS matematiklerini düzgün bir şekilde inceliyorsanız, matematiksel mantık ve set teorisi gibi şeylere bakıyorsunuz. Bunlar, onları destekleyen bazı oldukça ilgili matematiklere sahiptir. Bu nedenle, temel matematik seviyeniz biraz ropey ise, daha fazla CS ile ilgili alanlara geçmeden önce temel bilgilerle başlamak en iyisidir.

Bu nedenle K.A. Stroud'un Mühendislik Matematiği ile başlamanızı öneririm. İyi yazılmış, takip edilmesi kolay ve daha gelişmiş şeylerin yanı sıra temelleri de kapsar.

1
CdMnky

Açıkçası, temelde çok güçlü bir matematik bilgisi olmadan birçok alanda mükemmel bir programcı olabilirsiniz. Oyun motorları veya ağ yönlendirme optimizasyonu söz konusu olduğunda çok yetenekli olmayabilirsiniz, ancak gerçeği söylemek gerekirse, birçok iş uygulaması oldukça basittir. Ancak, umudu canlı tutmaya ve matematikten henüz vazgeçmemeye teşvik ediyorum.

Daha düşük bir seviyede aldığınız matematik ile daha yüksek bir seviyede aldığınız matematik arasında bir fark dünyası vardır. Calculus'ta kötü olduğunu söylemek çok farklı bir şey (Ben - Calc I'i ilk aldığımda başarısız oldum), Grafik Teorisi'nde kötü olduğunu söylemekten çok. Matematikte ilerledikçe, odak açıkça oldukça sıkıcı ve tekrarlayıcı olan ve grafik hesap makineniz tarafından yapılabilecek basit problem çözme değildir. Bunun yerine, mantıksal düşünme becerilerine odaklanılmaktadır: kanıt oluşturmak, açıkçası yazılım yazmak gibidir.

Şimdiye kadar sahip olduğum en iyi matematik sınıfı ilk "gerçek" matematik dersim olarak gördüğüm şeydi: temel olarak Grafik Teorisinden Sayı Teorisine kadar bir dizi alanı kapsayan prova sınıfına giriş. Kullandığımız metin harikaydı ( Matematiksel Düşünme: D'Angelo ve Batı tarafından Problem Çözme ve İspatlar .) İspatlara saldırmakla ilgili bazı fikirler edinmek için sadece bu kitap üzerinde çalışmayı yararlı bulabilirsiniz.

Genel olarak, gerçekten üniversitede aldığım matematikten herhangi birine ihtiyacım oldu mu? Hayır muhtemelen değil. Ancak resmi bir arka plana sahip olmak bana daha iyi eleştirel düşünme becerileri, daha iyi bir hayal gücü (genellikle bir sorunu çözmenin birçok yolu vardır, bazen iyi, bazen kötü, ancak benzersiz bir fikir yardımcı olabilir) ve problem çözme konusunda güven verdi.

1
Edward Thomson

Bak, matematikte iyiyim, ama gerçekten programlama için hiç kullanmıyorum ve çok fazla program yapıyorum. Benim tavsiyem, yeterince bilmemek için alışmak ve birinin sizin için matematik yapmasını tavsiye ederim.

Bilmeniz gereken çok şey var, hepsinde iyi olmayı bekleyemezsiniz, ancak özellikle matematik, çok yararlı değil.

Tabii ki, programlarınız bilimsel bir şey olduğu için buna ihtiyacınız olabilir, aksi takdirde daha yararlı bir şey öğrenmek için o zamanı kullanın.

1
Ando

ESSLLI'nin "Mantık ve Hesaplama" bölümündeki bazı (başlangıç) derslerin bazı ders notlarına bakarak (örnek olarak, yaklaşmakta olan 2011 programı veya 2010 programı , daha fazlasını arayın) ilginç olabilir. Programlamayla ilgili alandaki güncel teorik gelişmeler hakkında size bir izlenim verecektir. Ardından, bu kurslarda dokunulan belirli bir alt alandaki temelleri daha derinlemesine incelemeye karar verebilirsiniz.

(Aksi takdirde, sorunuzu cevaplamak zordur, gerçekten çok fazla ihtiyaç duymayacağınız veya ilgilenmeyebileceğiniz çok farklı "matematik" vardır. ESSLLI kurslarının bizim için ilginç olabilmesinin bir nedeni, güncel araştırma, böylece belirli bulmacaları çözmekle ilgilidirler ve belirli bir bulmacayı çözmeye çalışmak, bir teorinin gerçek bir şekilde anlaşılması, arkasındaki ilginç şeyin ne olduğunu anlama sürecinde önemli bir bileşendir.)

Temel bilgilerle başlayın ve daha sonra uzmanlığa geçin: Matematikçinin Lokum ve Nasıl çözülür başlamak için iki harika kitaptır. Matematikçinin Lokumu temel matematik konularına (örn. Geometri, cebir, matematik vb.) İnsan dostu ve eğlenceli bir şekilde yaklaşır. Henüz nasıl çözüleceğini okumadım ama akıl yürütme yoluyla matematik problemlerine nasıl saldırılacağına odaklanıyor.

1
sakisk