2008-08-27 25 views
5

मैं अपने कौशल को कीबोर्ड (यानी पेन और पेपर) से दूर करना चाहता हूं और मैं फिज बज़ जैसे सरल अभ्यास प्रश्नों के बाद हूं, पहले एन प्राइम्स प्रिंट करें।सरल प्रोग्रामिंग अभ्यास (फिज बज़, प्रिंट प्राइम्स)

आपके पसंदीदा सरल प्रोग्रामिंग प्रश्न क्या हैं?

उत्तर

5

समस्या: सम्मिलित + या - इस तरह से कि अभिव्यक्ति 100 का मूल्यांकन शर्त यह है कि अंक का क्रम बदल नहीं किया जाना चाहिए है में अंकों 123456789 के बीच कहीं भी करें।

उदा .: 1 + 2 + 3 - 4 + 5 + 6 + 78 + 9 = 100

प्रोग्रामिंग समस्या: जो उपरोक्त सवाल के सभी संभव समाधान आउटपुट अपने पसंदीदा भाषा में एक कार्यक्रम लिखें।

0

हनोई के टावर्स रिकर्सन पर अभ्यास के लिए बहुत बढ़िया हैं।

मैं नमूना प्रोग्रामिंग साक्षात्कार के प्रश्नों पर भी एक खोज करता हूं।

2

स्टीव येगेज के लेख Five Essential Phone Screen Questions (क्षेत्र संख्या वन: कोडिंग के तहत) में सरल-आश प्रोग्रामिंग प्रश्नों के कुछ अच्छे उदाहरण हैं। मुझे लगता है कि पेन और पेपर पर करने के लिए ये बहुत अच्छे हैं। इसके अलावा, एक ही लेख में ओओपी डिजाइन के तहत प्रश्न पेन और पेपर (या यहां तक ​​कि अपने सिर में) पर किए जा सकते हैं और मुझे लगता है कि, अच्छा अभ्यास करना है।

0

प्रतिस्पर्धी प्रोग्रामिंग के लिए काफी कुछ ऑनलाइन साइटें 'कठिनाई' द्वारा क्रमबद्ध नमूना प्रश्न/चुनौतियों से भरे हुए हैं। अक्सर, 'एल्गोरिदम' प्रश्नों में सरल श्रेणियां आपको लगता है कि आपके अनुरूप होंगे।

उदाहरण के लिए, TopCoder (एल्गोरिदम अनुभाग) देखें!

कि से

अलावा, 2 नमूने:

  1. आप उनके निर्देशांक (x_i, y_i) द्वारा विमान में एन अंक की एक सूची दी गई है, और एक नंबर आर> 0। एन दिए गए बिंदुओं से अधिकतम संख्या आउटपुट करें जिसे एक साथ त्रिज्या आर की डिस्क द्वारा कवर किया जा सकता है (बोनस अंक के लिए: जटिलता?)।

  2. आप एक के लिए एन संख्या a1 की एक सरणी दिया जाता है, और आप मैं के सभी मानों (ताकि उत्पादन फिर से एन तत्वों की एक सरणी है) के लिए a1 * a2 * ... * aN/ai गणना करने के लिए विभाजन का उपयोग किए बिना चाहते हैं। एक (गैर-निष्पक्ष) विधि प्रदान करें (जटिलता ओ (एन) गुणाओं में होनी चाहिए)।

0

पर काम कर रहा हूँ, लेकिन मैं कहना है कि सवाल वास्तव में तेजी से वास्तव में मुश्किल हो करना चाहते हैं। पहले 20 प्रश्नों के बाद, वे समस्याएं शुरू हो जाते हैं, ज्यादातर लोग 1/2 घंटे में नहीं समझ पाएंगे। एक और समस्या यह है कि उनमें से बहुत से गणित के साथ वास्तव में बड़ी संख्या के साथ सौदा करते हैं, जो मानक पूर्णांक या यहां तक ​​कि लंबे परिवर्तनीय प्रकारों में फिट नहीं होते हैं।

4

यदि आप एक कलम और पेपर प्रकार की exercizes चाहते हैं तो मैं कोडिंग से अधिक डिजाइनिंग की सिफारिश करता हूं।

वास्तव में कागज में कोडिंग बेकार है और यह आपको लगभग कुछ भी नहीं सीखने देता है।कार्य वातावरण एक कंप्यूटर में इतना टाइपिंग करता है, संकलन करता है, यह देखते हुए कि आपने क्या त्रुटियां की हैं, यहां और वहां रिफैक्टर का उपयोग करके, आप कागज़ के टुकड़े पर क्या कर सकते हैं इसकी तुलना नहीं करते हैं और इसलिए, आप क्या कर सकते हैं कागज का टुकड़ा, जबकि एक दिलचस्प मानसिक उत्पीड़न व्यावहारिक नहीं है, यह आपके कोडिंग कौशल में इतना सुधार नहीं करेगा।

दूसरी तरफ आप कागज में हाथ से एक माध्यम या यहां तक ​​कि जटिल अनुप्रयोग की वास्तुकला को डिज़ाइन कर सकते हैं। वास्तव में मैं आमतौर पर करता हूं। इंजीनियरिंग उपकरण (जैसे एंटरप्राइज़ आर्किटेक्ट) अच्छे हाथों के आरेखों को बदलने के लिए पर्याप्त नहीं हैं।

अच्छी परियोजनाएं हो सकती हैं, आप एक गेम इंजन कैसे डिजाइन करेंगे? कक्षाएं, धागे, भंडारण, भौतिकी, डेटा संरचनाएं जो सबकुछ पकड़ लेती हैं और इसी तरह। आप एक खोज इंजन कैसे शुरू करेंगे? आप एक पैटर्न पहचान प्रणाली कैसे डिजाइन करेंगे?

मुझे लगता है कि इस तरह की समस्याएं और अधिक फायदेमंद हैं कि आप जो भी पेपर कोडिंग कर सकते हैं।

संबंधित मुद्दे