2011-05-05 32 views
6

मैं डिस्क से/हैश-टेबल लिखना/पढ़ना चाहता हूं, लेकिन यह (print) सक्षम ऑब्जेक्ट नहीं है। मुझे मुख्य नाम नहीं पता होंगे इसलिए मैं इसे मैन्युअल रूप से करने का तरीका नहीं सोच सकता। मैंने पढ़ा है कि ऐसा करने के लिए वितरण-विशिष्ट तरीके हो सकते हैं; क्या एसबीसीएल में इसके लिए कुछ भी है?
मुझे एसबीसीएल मैनुअल या Google पर कुछ भी नहीं मिला।एक सामान्य लिस्प (एसबीसीएल) हैश-टेबल लिखें, या वैकल्पिक

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

उत्तर

11

MAPHASH दुष्प्रभावों के लिए हैश तालिका पर दो तर्कों के साथ एक फ़ंक्शन को मानचित्र करता है। दो तर्क हैंश तालिका में प्रत्येक आइटम की कुंजी और मान हैं। उदाहरण के लिए आप इसका उपयोग कर सकते हैं उदाहरण के लिए हैश तालिका में प्रत्येक आइटम को कुंजी और मान की सूची के रूप में लिखें:

(maphash (lambda (key value)(write (list key value))) *hash-table*) 
+0

यह बहुत अच्छा है, धन्यवाद! – Toerndev

+1

@gaidal, यदि यह आपकी समस्या हल करता है तो आपको वोटिंग तीरों द्वारा चेक मार्क पर क्लिक करके जवाब स्वीकार करना चाहिए। – dsolimano

+0

@dsolimano धन्यवाद, मुझे पता है, यह मेरी समस्या का समाधान करता है लेकिन मुझे लगा कि कुछ और प्रश्नों का उत्तर दिया जा सकता था। वैसे भी यह अब चेक किया गया है। – Toerndev