पूर्ण प्रकटीकरण - मैं द्वारा Is x += a quicker than x = x + a?+ = तेज़ से = = है?
अलग रूप में, मैं +=
बनाम -=
परीक्षण करने का फैसला यही कारण है कि प्रेरित था। सरल परीक्षण बताते हैं कि वे वही हैं।
std::vector<int> x;
for (int i = 0 ; i < 10000 ; i++)
x.push_back(rand()%10);
और फोन +=
और -=
आनुपातिक दी गई संख्या के लिए: तो मैं करने के लिए कुछ इसी तरह की कोशिश की
long long sum = 0;
for (each number in the array)
if (x[j] < k)
sum += x[j];
else
sum -= x[j];
इसलिए, अगर k
, है कहते हैं, छोटे, -=
अधिक बार बुलाया जायेगा (duuuh)। मैंने k = 2
के साथ प्रयास किया जो -=
का उच्च अनुपात प्रदान करेगा, और k = 5
के साथ, जो -=
और +=
की समान संख्या के बारे में उपज करना चाहिए।
पंचलाइन: -=
कॉलिंग +=
पर कॉल करने से लगभग दोगुनी तेज है। इस मामले में यह और अधिक कुशल क्यों होगा?
मुझे लगता है कि "प्रेरित" होने के लिए बेहतर चीजें हैं। – Mysticial
शायद ए + बी के लिए थोड़ा सा फायदा, यह मानते हुए कि ए-बी सिर्फ ए + (-बी) – nullpotent
दो शब्द हैं: शाखा भविष्यवाणी। संकेत: K = 8 –