साधारण भाषा में Space Complexity किसी भी प्रोग्राम के कार्यान्वयन होते समय RAM में छेकने वाले कम से कम जगह लेने वाली प्रक्रिया को कार्यान्वयन करने वाले वाले कलन विधि(Algorithm) को कहते हैं.. रुकिए-रुकिए.. मैं मजाक में "साधारण भाषा" शब्द का प्रयोग नहीं किया हूँ.. दरअसल मैं इससे सरल भाषा में इसे नहीं लिख सकता, हाँ कभी आमने-सामने मुलाक़ात हो तो बोल कर जरूर समझा सकता हूँ.. ;)
अगर जरा अधिक अंदर घुसते हुए देखें तो किसी कलन विधि(पहले बताया था ना Alogorithm, अब दुबारा मत पूछना) T और इनपुट x के लिए DSPACE(T,x) बताता है डिस्क सेल की संख्या को जो अभिकलन(Computation) T(x) के दौरान होता है..
नोट - DSPACE (T) = O(f (n)) if DSPACE (T, x) = O(f (n)) with n = |x | (length of x).
नोट - DSPACE (T) अपरिभाषित है जब कभी T(x) हाल्ट नहीं करता..
(अब 'O' के बारे में सवाल जवाब ना ही किये जाएँ तो अच्छा है.. मैं यहाँ Time Complexity के बारे में लिखने नहीं बैठा हूँ..)
अब जरा इसके उदाहरण के ऊपर आते हैं.. पहले ही कहे देता हूँ कि ये मुक्तकछंद कविता सी दिखने वाली चीज मैंने गूगल से सर्च करके निकाला है.. मुझे C अथवा C++ का कोई भी प्रोग्राम किसी मुक्तकछंद से कम नहीं दिखता है.. कभी प्रेम रस में सराबोर तो कभी वीर रस में.. कभी कभी तो ऐसा लगता है जैसे for loop मानो ऐसा कह रहा हो जैसे for you.. जन्म-जन्मांतर का साथ हो.. continue के कार्यान्वित होने भर से ही एक उल्लास सा छा जाता है, कि यह कोड अभी छोड़ कर नहीं गया है, पुनः कार्यान्वित होगा.. break शब्द के आने मात्र से दिल टूटने का अहसास होने लगता है.. वहीं Stack Overflow हो कर प्रोग्राम के क्रैश होने की तुलना मैं मृत्यु से करना चाहूँगा..
उफ़.. मैं भी क्या बक-बक करने लगा.. फिलहाल तो आप यह मुक्तकछंद कविता के रूप में Space Complexity का एक उदाहरण पर गौर फरमाएं..
// note: x is an unsorted array
int findMin(int[] x) {
int k = 0; int n = x.length;
for (int i = 1; i < n; i++) { if (x[i] < x[k]) { k = i; }// IF END }// FOR LOOP END return k; }
क्या हुआ? इतनी अच्छी कविता है, कम से कम तारीफ़ के एक बोल-बचन तो बनते हैं यार!!
समझ सकता हूँ की आप अब तक बोर हो चुके होंगे.. तो कुछ और बात करें? Space Complexity से बात चली थी, सो उसी की बात करूँगा.. आप आगे पढ़ें..
===========================================
रात के बारह बज कर सैतालिस मिनट पर मोबाइल हल्का सा वाइब्रेट करता है, सोचता हूँ की शायद किसी ने GTalk पर पिंग किया होगा.. मोबाइल उठा कर देखता हूँ, एक SMS है..
swd
कुछ दिनों पहले तक ऐसे ही मैसेज "Swt drm" की शक्ल लिए होता था, चलो कुछ और जगह बची!!
सोचता हूँ कि "ये लड़की रातों की नींद खराब करके Sweet Dreams का मैसेज भेज रही है.." ख्यालों का घोडा कुछ और दौडाने पर ये पाता हूँ की "बड़का ना खुद IT Professional बनता फिरता हूँ.. Space Complexity का सही उपयोग तो यहाँ किया जा रहा है, वो भी एक Arts विषय की लड़की के द्वारा.. तिस पर भी बिना किसी Algorithm के.."
Note - हर कहानी में सच्चाई की तलाश अच्छी नहीं होती मित्र.. कहानी अक्सर सच एवं कल्पना के मिश्रण से ही तैयार होता है.. ;-)
व्यक्तिगत को सार्वजनिक करने का यह तरीका मनभाया।
ReplyDeleteये कंप्यूटर और इस के कबाड़ के बारे में अपनी थियरी कुछ अलग है। कभी अपनी पोस्ट पे डिस्कस करेंगे। बिलकुल बाजारू भाषा में।
इतनी टेक्नीकल और डिफिकल्ट पोस्ट हमारे लिए नहीं बनी... स्वीट ड्रीम्स को छोड़कर कुछ समझ में नहीं आया!
ReplyDeleteभाषा से अभाषा की ओर उन्मुख प्रेम की अभिव्यक्ति.
ReplyDeleteबहुत सानदार लिखे हो बे ....ई ब्लॉगिंग में अपना कंपूटर कोर्स घुसेडना जरूरी था रे ..अबे आर्टस वालों के लिए लिखो जादे से जादे ..साईंस वाले लोग के लिए कौनो कमी है क्या बे ..आयं । आर्टस की तलाश में भटको वत्स ..देखो आर्ट्स सिनेमा भी गाईबे जैसा हो गया है तो हे पार्थ ..इत्ती electronicstic computrogina टाईप का पोस्ट लिखने की कौन आवश्यकता पड गई ..बच्चा ..चलो ये तो संधान का विषय है ...
ReplyDeleteबढ़िया है!
ReplyDeleteस्पेस कॉम्प्लेक्सिटी ठीक है, उसके साथ लड़की पोस्ट में इंजेक्ट करना क्या जरूरी है?
ReplyDeleteओह, तब शायद पढ़ने वाले भाग खड़े हों! :)
पास्कल में प्रोग्राम बनाते बनाते रात बीत जाती थी तब time complexity का पता चलता था।
ReplyDeleteहेहे... गज़ब इस बडे वाले ओ के साथ बडी यारी रही है.. ’ओ’झा जी की अभी भी हो शायद.. वैसे हम अपनी स्पेस कॉम्प्लेक्सिटी की समस्या कुछ दिन पहले ही खत्म कर दिये हैं.. १ टेराबाईट की हार्ड डिस्क ले लिये.. अब ससुर दुनिया में लोगो को स्पेस की कितनी भी दिक्कत हो हमारे पास बहुत जगह है :-) (देखते हैं कब तक.. वरना तुम्हारा वाला swd है न!)
ReplyDeleteखाली सबको इ बतलाने के लिए कि एक ठो बेचारी लड़की तुमको रोज sms करती है इतना बड़का ठो पोस्ट लिख मारे हो!
ReplyDeleteसच्ची सच्ची बताओ इतना जो कोडिंग समझाए हो, किसको पढ़ के बुझाया है? जिसको जिसको परसांत का इ पोस्ट समझ में आया है उ हाथ ऊपर करे.
कुछ समझ आया कुछ नहीं... रोचक पोस्ट है टेक्नीकल शब्दावली को यूं बांधना आसन नहीं होता :)
ReplyDeleteपूजा - मेरा दोस् जो मेरे साथे रहता है और घोर टेक्नीकल आदमी है, ऊ भी पढ़ के गरिया रहा था कि क्या क्या लिख दिया है.. सब ऊपर से निकल गया.. ;)
ReplyDeleteबहुत सुन्दर अभिव्यक्ति| धन्यवाद|
ReplyDeleteभाई हम तो आस लगा रहे थे कि आज Big O नोटेशन समझना पूरा क्लियर हो जायेगा लगता है इतनी मजेदार शैली में जो समझा रहे थे | पर आगे जाकर आप भी हाथ खड़े कर दिए कि Big O के बारे में मत पूछना !! भाई ये तो सरासर ठगी और चम्पू बनाने वाला काम हो गया | ऊँची दूकान फीका पकवान | ना पूछने कि नियम और शर्तें बीच में घुसेड़े हुए है |
ReplyDeleteक्या आप हमारीवाणी के सदस्य हैं? हमारीवाणी भारतीय ब्लॉग्स का संकलक है.
ReplyDeleteअधिक जानकारी के लिए पढ़ें:
हमारीवाणी पर ब्लॉग पंजीकृत करने की विधि
हमारीवाणी पर ब्लॉग प्रकाशित करने के लिए क्लिक कोड लगाएँ
// note: x is an unsorted array
ReplyDeleteint findMin(int[] x) {
int k = 0; int n = x.length;
for (int i = 1; i < n; i++) {
if (x[i] < x[k]) {
k = i;
}// IF END
}// FOR LOOP END
return k;
}
वाह.. क्या भाव हैं, क्या चाव हैं..
मन हो रहा है कि गाऊँ
प्रोग्रामर होगा पहला कवि, कोड से उपजा होगा गान
क्रैश कर वो हार्ड-डिस्क सरकी होगी कविता अनजान