गणित विषय या क्षेत्र जो कंप्यूटर प्रोग्रामिंग प्रवीणता बढ़ाते हैं? [बन्द है]


14

आम तौर पर कंप्यूटर प्रोग्रामर जो गणितज्ञ हैं या गणित की पृष्ठभूमि वाले हैं, वे सामान्य रूप से एल्गोरिदम और कंप्यूटर प्रोग्रामिंग के मामले में बहुत अच्छे हैं।

जो मैं नहीं कह रहा हूं:

एक अच्छा कंप्यूटर प्रोग्रामर बनने के लिए गणित की आवश्यकता होती है। प्रोग्रामिंग के लिए गणित आवश्यक है। अच्छे गणितज्ञ अच्छे प्रोग्रामर और इसके विपरीत होते हैं

जो मैं कह रहा हूं

मैं कुछ गणित सीखना चाहूंगा क्योंकि मेरा मानना ​​है कि यह मुझे एक बेहतर प्रोग्रामर बना देगा। गणित के कौन से क्षेत्र / विषय मुझे एक बेहतर प्रोग्रामर बनने में मदद करेंगे? प्रपत्र के उत्तर की math topic - corresponding cs areaसराहना की जाएगी।

NB: मैंने इसे StackOverflow पर कहा, जहाँ इसे ऑफ-टॉपिक घोषित किया गया था। मैं अपने खाली समय के दौरान इसे सीखना चाहता हूं जिस तरह से मैं कंप्यूटर प्रोग्रामिंग के साथ कर रहा हूं। अग्रिम में धन्यवाद।


1
मुझे आश्चर्य है कि StackOverflow ने घोषित किया यह प्रश्न ऑफ़-टॉपिक है। मेरे (एक सेवानिवृत्त प्रोग्रामर) दृष्टिकोण से, यह प्रश्न एसओ के लिए सबसे महत्वपूर्ण प्रश्नों में से एक होना चाहिए।
scaaahu

1
StackOverflow वास्तव में विशिष्ट प्रोग्रामिंग समस्याओं के बारे में अधिक है। यह CSEducators पर सबसे अच्छा होगा, और SoftwareEngineering पर काम कर सकता है।
Nat

1
हमने पहले भी इस तरह के सवाल किए हैं, और उन सभी में एक ही समस्या है: वे बहुत व्यापक हैं, और बहुत व्यक्तिपरक हैं। केवल आम सहमति का उत्तर है: यह सब
राफेल

@ राफेल पहले, मैं मॉड के फैसले का सम्मान करता हूं। हालाँकि, मैं ओपी की ओर से एक प्रश्न पूछना चाहता हूँ। क्या इस प्रश्न को सुधारने के लिए कुछ भी है तो इसे फिर से खोला जा सकता है? यदि इसे सुधारने का कोई तरीका नहीं है, तो क्या कोई अन्य एसई ओपी इस सवाल को पूछने जा सकता है? (जाहिर है, ओ पी पहले से ही ऐसा करने की कोशिश की और मुझे पता है यह एकेडेमिया एसई पर फिट नहीं हो सकता है, क्योंकि यह बारीकी से एकेडेमिया से संबंधित नहीं है।)
scaaahu

विशिष्ट समस्याओं के लिए औपचारिक समाधान पूछने वाले प्रश्न ठीक होंगे। आमतौर पर एसई प्रारूप के लिए अध्ययन सलाह सवाल अनसुना किए जाते हैं; "राय-आधारित" करीबी कारण सभी साइटों पर लागू होता है!
राफेल

जवाबों:


19

तो, गणित के कई क्षेत्र हैं जो सीएस विज्ञान के लिए प्रासंगिक हैं, लेकिन विशेष रूप से प्रोग्रामिंग के लिए:

  • ग्राफ सिद्धांत : यह एक बड़ा है। ग्राफ और पेड़ हर जगह हैं। नेटवर्क, मानचित्र, वीडियो गेम में पथ। यहां तक ​​कि रूबिक्स क्यूब को हल करने जैसी चीजों को ग्राफ एल्गोरिथ्म के रूप में तैयार किया जा सकता है और ए * के साथ हल किया जा सकता है।

  • असतत गणित : ग्राफ सिद्धांत से हटकर, सामान्य रूप से इस क्षेत्र को जानना मददगार है। यह प्रेरण द्वारा सबूतों से भरा है, जो पुनरावृत्ति को समझने के लिए बहुत उपयोगी हैं, जो प्रोग्रामिंग में बहुत उपयोगी है, विशेष रूप से डेटा संरचनाओं के साथ। सेट्स, काउंटिंग, इनक्लूजन-एक्सक्लूज़न, बूलियन लॉजिक आदि के बारे में जानना एक समय में एक बार काम आ सकता है।

  • टाइप थ्योरी: अनिश्चित रूप से, टाइप थ्योरी जानने से टाइप की गई भाषाओं में प्रोग्रामिंग को समझने में मदद मिलती है, और अधिक मोटे तौर पर, कुछ शुद्धता गुणों को सुनिश्चित करने के तरीके के रूप में उपयोग करने के साथ। उप-सिद्धांत के बारे में जानने से आपको जावा जैसी भाषाओं में सहसंयोजक और विरोधाभासी समझने में मदद मिलती है। पैरासिटिक बहुरूपता जैसी चीजों के बारे में जानना स्पष्ट रूप से सहायक होता है जब हास्केल या पर्सीस्क्रिप्ट जैसी एक प्रकार की भारी भाषा सीखते हैं, लेकिन लालागू जैसे स्काला, टाइपस्क्रिप्ट, और जंग उद्योग में अधिक प्रचलित हो रहे हैं, और उनके कोर पर प्रकार हैं।

    यदि आप इसे अपने चरम पर ले जाते हैं, तो आपको Coq और Agda और Idris जैसी चीजें मिलती हैं, जिनका उपयोग कार्यक्रमों के बारे में बेहद सटीक शुद्धता गुण साबित करने के लिए किया जा सकता है।

  • कम्प्यूटेबिलिटी और कॉम्प्लेक्सिटी थ्योरी : यह जानना कि जब कोई समस्या या तो बेकार है, या एनपी-हार्ड, उपयोगी है, क्योंकि आप इसे करने के लिए एक तेज़ तरीके से अपने दिमाग को बर्बाद करने में घंटों बर्बाद नहीं करेंगे। इसी तरह, अनुमानित एल्गोरिदम, नियत-पैरामीटर ट्रैक्टबिलिटी, या लो-बेस एक्सपोनेंशियल एल्गोरिदम के पीछे के कुछ सिद्धांत को जानना, तब मदद कर सकता है जब आपको एनपी-हार्ड समस्या को हल करने की आवश्यकता होती है।

  • ऑटोमेटा सिद्धांत: कई समस्याओं को विभिन्न राज्य मशीनों के साथ मॉडल किया जा सकता है, इसलिए उनके गुणों को समझना उपयोगी है।

कुछ क्षेत्र-विशिष्ट क्षेत्र भी हैं:

  • आँकड़े: यदि आप मशीन लर्निंग या बिग-डेटा कर रहे हैं, तो यह बहुत जरूरी है।

  • रैखिक बीजगणित / वेक्टर कैल्क : ये दोनों मशीन लर्निंग, ग्राफिक्स, सिमुलेशन, या इमेज / ऑडियो प्रोसेसिंग के लिए महत्वपूर्ण हैं।

  • जाली सिद्धांत : यदि आप संकलक या प्रोग्राम अनुकूलन के साथ कोई काम कर रहे हैं, तो यह हर समय आता है। हर जगह फिक्स्ड अंक!

  • श्रेणी सिद्धांत: कोड की आवश्यकता नहीं है, लेकिन प्रकार के सिद्धांत में गहराई से डूबी किसी भी चीज के लिए उपयोगी है।

संपादित करें: विश्वास नहीं कर सकता कि मैं भूल गया:

  • क्रिप्टोग्राफी : यदि आप सुरक्षा, हैशिंग, डिजिटल हस्ताक्षर और इस तरह से रुचि रखते हैं, तो कुछ संख्या सिद्धांत, समूह सिद्धांत, क्षेत्र सिद्धांत, अण्डाकार वक्र सिद्धांत, आदि सीखना सुनिश्चित करें।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.