Tuesday 20 December 2016

How To Create Website Using GitHub



https://pages.github.com/
http://blog.teamtreehouse.com/using-github-pages-to-host-your-website

Left Shift And Right Rotation of a Array

Sample Code ....

int[] array = new int[n];

        ////pre-rotation of array method:
        //-----------------------------------Right rotation
        //for (int i = 0; i < n; i++)
        //{
        //    array[(i + k) % n] = int.Parse(s[i]);
        //}

        //------------------------------------Left rotation
        for (int i = 0; i < n; i++)
        {
            array[(i + (n-k)) % n] = int.Parse(s[i]);
        }

        for (int i = 0; i < n; i++)
        {
            Console.WriteLine(array[i]+" ");
        }

Friday 9 December 2016

Bit Manupulatin - Example Explanation

https://www.hackerrank.com/challenges/linkedin-practice-binary-numbers/forum
Other than I/O, all operations stay as it is, in Java. Here's Java version for you :
public static void main(String[] args) {
    Scanner scan = new Scanner(System.in) ;
    int n = scan.nextInt() ;
    scan.close() ;

    int ans = 0 ;
    while (n > 0) {
        n &= (n<<1) ;
        ans += 1 ;
    }
    System.out.println(ans) ;
}

Since you want explanation with an example, I'll explain it with 221 because 13won't help much. Now, binary represention of 221 is 11011101. Visualizing iterations of while-loop using binary clarifies the procedure :
First Iteration :   n            11011101
                    n<<1        110111010
                    n & (n<<1)   10011000

Second Iteration :  n            10011000
                    n<<1        100110000
                    n & (n<<1)      10000

Third Iteration :   n               10000
                    n<<1           100000
                    n & (n<<1)          0
As the above example shows, number of consecutive 1's in n reduce by one in every iteration of while-loop. Thus, counting the iterations, gives the required answer.