मुझे आश्चर्य है कि अगर कोई यहां जानता है कि समाप्ति स्थिति में लूप के लिए निम्नलिखित का अर्थ है।लूप समाप्ति स्थिति के लिए यह जावा क्या है?
for (int i = 0; i < 1 << Level; i++) {
...
}
मुझे आश्चर्य है कि अगर कोई यहां जानता है कि समाप्ति स्थिति में लूप के लिए निम्नलिखित का अर्थ है।लूप समाप्ति स्थिति के लिए यह जावा क्या है?
for (int i = 0; i < 1 << Level; i++) {
...
}
<<
बाईं, जहां n
दूसरे संकार्य है करने के लिए पहली संकार्य के टुकड़े n
बार बदलाव।
इसलिए 1 << Level
बदलाव संख्या 1
बाईं है, जो की गणना 2^स्तर के बराबर है करने के लिए Level
समय की एक 1
बिट।
तो i < 1 << Level
i < Math.pow(2,Level)
के बराबर है।
सीधे शब्दों में
कहाfor (int i = 0; i < 1 << Level; i++) {
...
}
for (int i = 0; i < Math.pow(2,Level); i++) {
...
}
के बराबर है तो पाश के लिए जब से तुम 0 से गिनती कर रहे हैं के लिए "Math.pow (2, स्तर)" बार चलेंगे Math.pow (2, स्तर) -1।
अगर स्तर = 2 तो पाश
for(int i =0;i<4;i++){}
है अगर स्तर = 3 तो पाश
for(int i =0;i<8;i++){}
है अगर स्तर = 5 तो पाश
for(int i =0;i<32;i++){}
में है अन्य उत्तरों के अलावा यह अभिव्यक्ति के चारों ओर कोष्ठक डालने में मदद कर सकता है अगर यह अस्पष्ट है
for (int i = 0; i < (1 << Level); i++) {
...
}
Level
के बाद से
इसके अलावा, एक चर यह जब तक यह एक निरंतर है एक छोटा सा पत्र अर्थात level
के लिए सुझाव दिया है तो यह LEVEL
होना चाहिए। और मुझे लगता है कि सामान्य रूप से पठनीयता> प्रदर्शन (यदि यह भी एक समस्या है?)। तो Math.pow(2,Level)
यह समझने में बहुत आसान है कि आप निम्न स्तर के प्रोग्रामर नहीं हैं, सी
'<<' थोड़ा सा ऑपरेटर है। यह 2 स्तर के समय से गुणा करता है। –