GATE CSE
First time here? Checkout the FAQ!
x
+1 vote
84 views

Given an array of integers, update the index with multiplication of previous and next integers,

   e.g.

Input: 2 , 3, 4, 5, 6

Output: 2*3, 2*4, 3*5, 4*6, 5*6 

Please suggest an approach that gives output with maximum performance:

asked in Programming by Veteran (27.3k points)   | 84 views

1 Answer

+4 votes
void array (int A[],int Aux[], int n)
{
    Aux[0]=A[0]*A[1];        /* First and last index calculation are exception
                                    so, it can be manually done.*/
    Aux[n-1]=A[n-1]*A[n-2];
    
    for(int i=1;i<n-1;i++)
    Aux[i]=A[i-1]*A[i+1];
}

A is given array of integers and Aux is auxiliary array for storing final result and n is the length of array . And complexity of this solution is O(N).

answered by Active (2.2k points)  
edited by

Related questions

0 votes
1 answer
1
0 votes
0 answers
2
0 votes
2 answers
3
asked in Programming by Desert_Warrior Boss (8.9k points)   | 132 views


Top Users Jul 2017
  1. Bikram

    4386 Points

  2. manu00x

    2464 Points

  3. Debashish Deka

    1850 Points

  4. joshi_nitish

    1686 Points

  5. Arjun

    1340 Points

  6. Hemant Parihar

    1184 Points

  7. Arnab Bhadra

    1112 Points

  8. Shubhanshu

    1080 Points

  9. Ahwan

    900 Points

  10. rahul sharma 5

    732 Points


24,031 questions
30,983 answers
70,430 comments
29,358 users