Para un número n dado, si el k-ésimo bit es 0, entonces cámbielo a 1 y si es 1, cámbielo a 0.
Ejemplos:
Input : n = 5, k = 1 Output : 4 5 is represented as 101 in binary and has its first bit 1, so toggling it will result in 100 i.e. 4. Input : n = 2, k = 3 Output : 6 Input : n = 75, k = 4 Output : 67
A continuación se muestran pasos simples para encontrar el valor del k-ésimo bit
1) Left shift given number 1 by k-1 to create a number that has only set bit as k-th bit. temp = 1 << (k-1) 2) Return bitwise XOR of temp and n. Since temp has only k-th bit set, doing XOR would toggle only this bit.
Ejemplo :
n = 75 and k = 4 temp = 1 << (k-1) = 1 << 3 = 8 Binary Representation of temp = 0..00001000 Binary Representation of n = 0..01001011 Bitwise XOR of two numbers = 0..01000011
C++
// CPP program to toggle k-th bit of n #include<iostream> using namespace std; int toggleKthBit(int n, int k) { return (n ^ (1 << (k-1))); } // Driver code int main() { int n = 5, k = 1; cout << toggleKthBit(n , k); return 0; }
Java
// Java program to toggle // k-th bit of a number class Toggle { static int toggleKthBit(int n, int k) { return (n ^ (1 << (k-1))); } // main function public static void main (String[] args) { int n = 5, k = 1; System.out.println(toggleKthBit(n , k)); } }
Python3
# Python3 code to toggle k-th bit of n def toggleKthBit(n, k): return (n ^ (1 << (k-1))) # Driver code n = 5 k = 1 print( toggleKthBit(n , k)) # This code is contributed by "Sharad_Bhardwaj".
C#
// C# program to toggle // k-th bit of a number using System; class GFG { static int toggleKthBit(int n, int k) { return (n ^ (1 << (k-1))); } // main function public static void Main() { int n = 5, k = 1; Console.WriteLine(toggleKthBit(n , k)); } } //This code is contributed by Anant Agarwal.
PHP
<?php // Php program to toggle k-th bit of n function toggleKthBit($n, $k) { return ($n ^ (1 << ($k - 1))); } // Driver code $n = 5; $k = 1; echo toggleKthBit($n, $k); // This code is contributed by Ajit ?>
Javascript
<script> // Javascript program to toggle // k-th bit of a number function toggleKthBit(n, k) { return (n ^ (1 << (k-1))); } let n = 5, k = 1; document.write(toggleKthBit(n , k)); </script>
Producción :
4
Complejidad de tiempo : O(1)
Complejidad espacial : O(1)
Este artículo es una contribución de SAKSHI TIWARI . Si te gusta GeeksforGeeks (¡sabemos que te gusta!) y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA