shell - Find the closest two numbers and its the distance -
मेरे पास एक फाइल है:
0.000000 0.000051 0.000076 0.000102 0.000152 0.000178 0.000203 0.000229 0.000254 0.000279 0.000305 0.000356 0.000381 0.000406 और मैं दो नंबर और उसके सबसे निकटतम दूरी को ढूंढना चाहता हूं I मैं शैल स्क्रिप्ट का उपयोग कर रहा हूँ उस समय मेरे पास:
पॉइंट डैट बिल्ली | कट-एफ 1 | सॉर्ट | Uniq अगले मामले में मैं दो कॉलमों पर विचार करना चाहूंगा। तो एक्स-अक्ष के लिए एक स्तंभ और y अक्ष के लिए एक होगा यह अंक की समस्या की निकटतम जोड़ी की तरह है
मजबूत> यह टिप्पणी का जवाब नहीं है।
जब आप अपने एल्गोरिथम की जांच करते हैं, तो इस आउटपुट का उपयोग करें।
पायथन कोड:
आयात करें itertools डेटा = [0.000000, #data [0] 0.000051, #data [1] 0.000076, #data [2] 0.000102, #data [3] 0.000152, #data [4] 0.000178, #data [5] 0.000203, #data [ 6] 0.00022 9, #data [7] 0.000279, #data [9] 0.000305, #data [10] 0.000356, #data [11] 0.000381, #data [12] 0.000406 #data [13] ] के लिए सॉर्ट किए गए में ((एब (आई [0] [0] -i [1] [0]), (आई [0] [1], आई [1] [1])) के लिए मैं आईटीरटोल्स डब्ल्यु। (ज़िप (डेटा, सीमा (लेन (डेटा))), 2)): प्रिंट स्ट्र (जे [1])। लैज (8), '- & gt;', j [0] # इंडिसेज - & gt; दूरी आउटपुट:
(7, 8) - & gt; 2.5e-05 (1, 2) - & gt; 2.5e-05 (5, 6) - & gt; 2.5e-05 (8, 9) - & gt; 2.5-05 (11, 12) - & gt; 2.5-05 (12, 13) - & gt; 2.5-05 (4, 5) - & gt; 2.6-05 (9, 10) - & gt; 2.6-05 (2, 3) - & gt; 2.6-05 (6, 7) - & gt; 2.6-05 (7, 9) - & gt; 5e-05 (3, 4) - & gt; 5e-05 (11, 13) - & gt; 5e-05 (4, 6) - & gt; 5.1-05 (6, 8) - & gt; 5.1-05 (8, 10) - & gt; 5.1-05 (10, 11) - & gt; 5.1e-05 (0, 1) - & gt; 5.1e-05 (1, 3) - & gt; 5.1-05 (5, 7) - & gt; 5.1-05 (7, 10) - & gt; 7.6e-05 (3, 5) - & gt; 7.6-05 (0, 2) - & gt; 7.6-05 (2, 4) - & gt; 7.6e-05 (5, 8) - & gt; 7.6-05 (6, 9) - & gt; 7.6-05 (10, 12) - & gt; 7.6-05 (9, 11) - & gt; 7.7e-05 (4, 7) - & gt; 7.7e-05 (3, 6) - & gt; 0.000101 (1, 4) - & gt; 0.000101 (5, 9) - & gt; 0.000101 (10, 13) - & gt; 0.000101 (2, 5) - & gt; 0.000102 (4, 8) - & gt; 0.000102 (6, 10) - & gt; 0.000102 (8, 11) - & gt; 0.000102 (9, 12) - & gt; 0.000102 (0, 3) - & gt; 0.000102 (7, 11) - & gt; 0.000127 (1, 5) - & gt; 0.000127 (2, 6) - & gt; 0.000127 (3, 7) - & gt; 0.000127 (4, 9) - & gt; 0.000127 (5, 10) - & gt; 0.000127 (8, 12) - & gt; 0.000127 (9, 13) - & gt; 0.000127 (7, 12) - & gt; 0.000152 (0, 4) - & gt; 0.000152 (1, 6) - & gt; 0.000152 (3, 8) - & gt; 0.000152 (8, 13) - & gt; 0.000152 (4, 10) - & gt; 0.000153 (6, 11) - & gt; 0.000153 (2, 7) - & gt; 0.000153 (7, 13) - & gt; 0.000177 (3, 9) - & gt; 0.000177 (0, 5) - & gt; 0.000178 (2, 8) - & gt; 0.000178 (5, 11) - & gt; 0.000178 (6, 12) - & gt; 0.000178 (1, 7) - & gt; 0.000178 (0, 6) - & gt; 0.000203 (1, 8) - & gt; 0.000203 (2, 9) - & gt; 0.000203 (3, 10) - & gt; 0.000203 (5, 12) - & gt; 0.000203 (6, 13) - & gt; 0.000203 (4, 11) - & gt; 0.000204 (1, 9) - & gt; 0.000228 (5, 13) - & gt; 0.000228 (2, 10) - & gt; 0.00022 9 (4, 12) - & gt; 0.00022 9 (0, 7) - & gt; 0.00022 9 (0, 8) - & gt; 0.000254 (1, 10) - & gt; 0.000254 (3, 11) - & gt; 0.000254 (4, 13) - & gt; 0.000254 (0, 9) - & gt; 0.000279 (3, 12) - & gt; 0.000279 (2, 11) - & gt; 0.00028 (3, 13) - & gt; 0.000304 (0, 10) - & gt; 0.000305 (1, 11) - & gt; 0.000305 (2, 12) - & gt; 0.000305 (1, 12) - & gt; 0.00033 (2, 13) - & gt; 0.00033 (1, 13) - & gt; 0.000355 (0, 11) - & gt; 0.000356 (0, 12) - & gt; 0.000381 (0, 13) - & gt; 0.000406 तो छोटी से छोटी सेट है (डेटा [7], डेटा [8])।
और उत्पादन से यदि आप calc से पहले डेटा को सॉर्ट, आप कर सकते हैं इस तरह न्यूनतम दूरी आसानी से पाएं।
# यह स्यूडोकोड है एक्स [एन] = डेटा [एन] - डेटा [एन -1] मिनट (x)
Comments
Post a Comment