Hi all,
I've interviews for SDE-1 in amazon bangalore this weekend. Can any one
tell me the recent questions they are focusing on ? or if anyone have the
recent experience with them please share it.
Thanks
--
You received this message because you are subscribed to the Google Groups
Algorithm
Round 1 :
Q2: given BST is not correct.
correct BST passing this condition will be 7
/
5
/
Hi ravi ,
I think he is trying to find the longest possible increasing chain in
matrix .
he needs to start traversing from first row choosing columns one by one and
move in all direction. but he needs to maintain the already visited nodes.
On Thu, Jun 6, 2013 at 12:07 AM, sourabh jain
Round 1:
1.Design a Data Structure supporting 3 queries a)push b)pop c) find
minimum
Ans : Do it using Two Stacks . in first stack use it as normal stack.
second stack use it to find minimun as the value inserted is greater than
the top ignore it else push it. if pop operation happens and the
Can u clear Round3 --- Qstn-3. the language is not cleared
On Wed, Jun 5, 2013 at 1:52 PM, sourabh jain wsour...@gmail.com wrote:
Round 1:
1.Design a Data Structure supporting 3 queries a)push b)pop c) find
minimum
Ans : Do it using Two Stacks . in first stack use it as normal stack.
Can any one give some points on Round 3 : 1st and 3rd question ?
On Thu, May 2, 2013 at 9:27 PM, Guneesh gunees...@gmail.com wrote:
Round 1:
1.Design a Data Structure supporting 3 queries a)push b)pop c) find
minimum
2.Given post order of a BST find whether each node of the tree(except
these are for which position? and experience?
On Thu, May 2, 2013 at 9:27 PM, Guneesh gunees...@gmail.com wrote:
Round 1:
1.Design a Data Structure supporting 3 queries a)push b)pop c) find
minimum
2.Given post order of a BST find whether each node of the tree(except
leaf) has only 1 child
Round 1:
1.Design a Data Structure supporting 3 queries a)push b)pop c) find
minimum
2.Given post order of a BST find whether each node of the tree(except
leaf) has only 1 child or not.
eg5
\
7
/
3
/
2
is correct as
A = {5, 3, 8, 9, 16}
After one iteration A = {3-5,8-3,9-8,16-9}={-2,5,1,7}
After second iteration A = {5-(-2),1-5,7-1} sum =7+(-4)+6=9
Given an array, return sum after n iterations
my sol/
void abc(int arr[],n)
{
for(i=0;in;i++)
arr[i]=arr[i+1]-arr[i];
abc(arr,n-1);
}
I wana ask that the
Your solution fails for a number of reasons:
1. If your array is size 1 or 0.
2. The last digit in the array is found by arr[n-1] - [n-2] not
arr[i+1]-arr[i]
3. Recursion here creates unnecessary overheard
How many times are you calling abc? Draw the recursion tree.
On Tue, Apr 9, 2013 at 11:29
@Rashmi: I did not get your approach. I do not get emails from the group
just in case you have posted a solution :( What do you mean by keeping a
count? Also, are you using a hashmap? If yes, whats ur K,V?
#Pralay
On Tue, Feb 12, 2013 at 10:00 AM, rashmi i rash...@gmail.com wrote:
Hey Pralay,
Guys,
Why can't we simply use a hashset for both the questions. hash the arr[i]
and the frequencies in the hash map in the first pass. Then iterate over
the array to find the first arr[i] whose freq is 1 in the hash map. For
second part, keep a count and find the kth element in the array whose
first problem can be solved using a fixed sized array if we know the
range of numbers or a hash table with an appropriate hash function and
it is O(N) for time and space as some solutions above already
mentioned this.
for the second problem, I don't think heap is the right data structure
which is
One solution for the 2nd question can be LinkedHashMap (linked list +
hashmap) .
Store the integer in linked list in the order of occurrence in stream and
make an entry in hashmap on first occurence. Delete the integer entry from
linked list on 2nd occurence and replace the reference with some
Hi All,
I need ur help in solving few questions.
Would you please help me out *BY GIVING THE ALGORITHM AND THE LOGIC BEHIND
IT and it's DEEP EXPLANATION IF POSSIBLE?*
*
*
*a. Kadane’s Algo.*
*
*
*b. Linked-list intersection point.*
*
[A tree with only parent pointer, how to find LCA?]
*
*
Hey Pralay,
Sorry, if I have missed any point.Why would we need to map the
frequencies when the second problem can be solved by simply keeping a count
and comparing the index values that have been already mapped.
On Fri, Feb 8, 2013 at 11:19 AM, sourabh jain wsour...@gmail.com wrote:
One
was trying to do something clever. Knew it couldnt be that simple. Missed
some cases. I still feel with some hacks and handling some special cases
this approach would work.
But considering it still takes O(n) time I am not thrilled. I am still ok
with my algo taking Space for time. But probably
I guess the part 1 can be solved in O(n) time and space both. Here is my
approach.
Assume: Array given is arr[] = {2,3,1,2,3,2,4,1,5,6}
1. Given an array, scan thru it, element by element and hash it on a
hashmap with key as the arr[i] as the key and i+1 as the index.
2. There would be two cases
Navneet,
For 2nd problem, i need a clarification, whether the Kth number is wrt
mathematical ordering of numbers or
the kth number is wrt to the order in which the number are input ?
On Wed, Feb 6, 2013 at 10:00 AM, navneet singh gaur
navneet.singhg...@gmail.com wrote:
nice algo ankit, so it
what would happen of the input is like this : 5, 5, 66, 66, 7, 1, 1, 77,7
i think in this case the moment window reaches to point (66,7,1) it will
take 7 as unique number but
that too window will not move any futhur , but 7 is not unique .
Please comment if i misunderstood ur explanation .
Also, for the part two of the question, you can simply go in for the *kth
largest positive index *in the same hashmap (described earlier for part 1).
That solves the part two of the problem :)
Hth,
*Pralay Biswas*
*MS,Comp Sci, *
*University of California, Irvine*
On Tue, Feb 5, 2013 at 8:46 PM,
for 2nd question you can make a heap with their index as a factor to
heapify them. whenever a integer in stream gets repeated you just nead to
remove it from heap and heapify it.
On Wed, Feb 6, 2013 at 10:00 AM, navneet singh gaur
navneet.singhg...@gmail.com wrote:
nice algo ankit, so it will
@sourabh : how do u find whether the element in stream gets repeated in
heap.-- O(n) time...totally its O(nk) algo ..
If we maintain max-heap with BST property on index, then it would be
O(nlogk).
On Wed, Feb 6, 2013 at 12:25 PM, sourabh jain wsour...@gmail.com wrote:
for 2nd question you can
*APPROACH 1:*
use a hashtable for both the questions ?
Insert the integers as they are given in the array into a hashtable. The
structure I am thinking is key (the integer) - [index]. Once all elements
are inserted. Run through the hashtable and select the one which has
len(value) == 1 and is
@srikar :
approach2 is wrong.
ex: [1, 5, 7, 66, 7, 1, 77]
first window [1,5,7] all are unique.oops
On Wed, Feb 6, 2013 at 11:31 PM, Srikar srikar2...@gmail.com wrote:
*APPROACH 1:*
use a hashtable for both the questions ?
Insert the integers as they are given in the array into a
in above algo primary index is no of times that value is repeated till now
--
You received this message because you are subscribed to the Google Groups
Algorithm Geeks group.
To unsubscribe from this group and stop receiving emails from it, send an email
to
For 1:
i think you can use sorting, sort the array and keep the indices of the
numbers in the sorted list.
Now traverse the sorted list and in the sorted list you need to find the
unique number with the
minimum index which is easy to find.
Eg: Array:5 3 1 2 4 1 4
Indices: 0 1 2 3 4 5 6
1. Given a array,find a first unique integer.
2. Integers are coming as online stream,have to find a kth unique integer
till now.
For 1.
Even we cannot use sorting for solving this as if we sort it than our first
number which is non-repetitive changes.
The best I am able to do is nlogn using
I can think of an o(n^2) algo for 2n question
Make a heap formed acctoring to two indexes
1.Primary -value
2.Secondary - index
Now for each new incoming value first search in head if exist inc its index
else make a new node
--
You received this message because you are subscribed to the Google
For a given number, find the next greatest number which is just greater
than previous one and made up of same digits.
--
loop from the end of given number till you get a digit less than the
previously scanned digit.Let the index of that number be 'i' .
if index = -1,then the given number is the largest one
else do the following
1) swap the digit at the index i with the digit just greater than it in the
scanned
@atul-I think This Should work for n dimension-
complexity O(n^no.of dimesions)
:-
have N-dimension check for which Tile can contain which Tile.i.e (3,3,4)
can contain (2,3,4) .
Now
1.Take the titles which cannot contain any-other tile set no-of tile if it
is base =1;
2.now take tiles which can
You are given many slabs each with a length and a breadth. A slab i can be
put on slab j if both dimensions of i are less than that of j. In this
similar manner, you can keep on putting slabs on each other. Find the
maximum stack possible which you can create out of the given slabs
and for
its a LIS problem.
need to think for n-dimension...
On 8/26/12, Ravi Ranjan ravi.cool2...@gmail.com wrote:
You are given many slabs each with a length and a breadth. A slab i can be
put on slab j if both dimensions of i are less than that of j. In this
similar manner, you can keep on putting
Yeah Atul is right.
Here is my solution:--
1) first rearrange the dimensions of slabs i.e. put bigger dimension in y
and smaller dimenson in x (rotate the slab)
2) then arrange all slabs in increasing order of x dimension
3) and then find the longest increasing sub-sequence based on y
@kailash : you can simply find area of each slab area=x*y ,,,store it;
then just run LIS on this area.
On 8/26/12, Kailash Bagaria kbkailashbaga...@gmail.com wrote:
Yeah Atul is right.
Here is my solution:--
1) first rearrange the dimensions of slabs i.e. put bigger dimension in y
and
@Atul007: No, because a (1,4) tile will not fit on a (2,3) tile.
Dave
On Sunday, August 26, 2012 7:45:27 AM UTC-5, atul007 wrote:
@kailash : you can simply find area of each slab area=x*y ,,,store it;
then just run LIS on this area.
On 8/26/12, Kailash Bagaria kbkailas...@gmail.com
@dave : correct..
i guess this will work :-
sort in decreasing area.
then run LIS such that for i j , length( i ) length( j ) width(
i ) width( j )
On 8/26/12, Dave dave_and_da...@juno.com wrote:
@Atul007: No, because a (1,4) tile will not fit on a (2,3) tile.
Dave
On Sunday, August
but how to solve this problem for with n-dimension ??
On Sun, Aug 26, 2012 at 6:47 PM, atul anand atul.87fri...@gmail.com wrote:
@dave : correct..
i guess this will work :-
sort in decreasing area.
then run LIS such that for i j , length( i ) length( j ) width(
i ) width( j )
On
Given an array of integers where some numbers repeat once, some numbers
repeat twice and only one number repeats thrice, how do you find the number
that gets repeated 3 times?
Does this problem have an O(n) time and O(1) space solution?
No hashmaps please!
--
You received this message because
@ashgoel - Could you please explain what exactly are you doing here ?
On Wednesday, 4 July 2012 16:16:38 UTC+5:30, ashgoel wrote:
Q4
vectorString prefix;
prefix[0]=NULL;
prefixCount =1;
for (int i=0;in;i++)
for (int j=0;jn;j++)
for (int k=0; kprefixCount;k++)
{
if
Q1) Given a newspaper and a set of ‘l’ words, give an efficient algorithm
to find the ‘l’ words in the newspaper.
Q2) Find the next higher number in set of permutations of a given number.
Q3) Given preorder of a BST, find if each non-leaf node has just one child
or not. To be done in linear
1. inverted hasp map
2. not clear
3. VLR, how do you identify end of L and start of R, question incomplete
4. One problem: consider
...
a b...
c d...
...
if ab is a prefix, can aba be another prefix, i would assume so. But if
that is true, i am not sure if this program will come to an
Q5 is sorting problem
Best Regards
Ashish Goel
Think positive and find fuel in failure
+919985813081
+919966006652
On Wed, Jul 4, 2012 at 4:13 PM, Ashish Goel ashg...@gmail.com wrote:
1. inverted hasp map
2. not clear
3. VLR, how do you identify end of L and start of R, question incomplete
Q4
vectorString prefix;
prefix[0]=NULL;
prefixCount =1;
for (int i=0;in;i++)
for (int j=0;jn;j++)
for (int k=0; kprefixCount;k++)
{
if (visited[i][j]) continue;
visited[i][j] = true;
String s=prefix[k]+a[i][j];
if (isWord(s) { printWord(s);
Consider trees:
1 3
2 3 2
1
pre order traversal is same still (1 , 2 ,3) even though ist tree doesn't
satisfy the criteria . So I don't think it can be
1. For first question trie of given word will be best option.
Space complexity O(total length of words) (worst case)
Time complexity O(T) . T length of input text (Newspaper)
2. consider it to be a 4 digit number ABCD . Find maximum Most
significant digit say it is C , and out of these
For question 5.
Even this doesn't seems right
Consider this scenario
Match b/w Winner
a vs b a
a vs c c
b vs c b
What will be order ?? acb or bca
On Wed, Jul 4, 2012 at 5:38 PM, Bhupendra Dubey
1
2 3 is not a BST and its pre-order traversal is 1 2 3, pre
order of other is 3 2 1 .
On Wed, Jul 4, 2012 at 5:17 PM, Bhupendra Dubey bhupendra@gmail.comwrote:
Consider trees:
1 3
2 3
Sorry i typed wrongly
tree is
2
1 3
preorder traversal is 123 and same for other tree as well. Please check !
On Wed, Jul 4, 2012 at 5:24 PM, a g ag20071...@gmail.com wrote:
1
2 3 is not a BST and its pre-order traversal is 1 2 3, pre
order of
Hi,
*There are two arrays of length 100 each. Each of these has initially n
(n=100)
elements. First array contains names and the second array contains numbers
such that ith name in array1 corresponds to ith number in array2.
Write a program which asks the user to enter a name, finds it in
example pls...
On Thu, Jun 14, 2012 at 1:01 PM, Mohit Rathi mohit08...@iiitd.ac.in wrote:
Hi,
*There are two arrays of length 100 each. Each of these has initially n
(n=100)
elements. First array contains names and the second array contains numbers
such that ith name in array1 corresponds
arr1 = [abc,xyz,lmn,def]
arr2 = [3,6,2,8]
if user enters xyz then 6 will be printed
else
if xyz doesn't exist in arr1 then ask for a number and add them in
respective arrays(name in arr1 and number in arr2).
Hope it helps
On Thu, Jun 14, 2012 at 3:58 PM, utsav sharma
it can be done using map in c++
On Thu, Jun 14, 2012 at 4:23 PM, Mohit Rathi mohit08...@iiitd.ac.in wrote:
arr1 = [abc,xyz,lmn,def]
arr2 = [3,6,2,8]
if user enters xyz then 6 will be printed
else
if xyz doesn't exist in arr1 then ask for a number and add them in
respective arrays(name in
Since the size of array is very less I think Hashmap is the best.
Use name as the hash key and number as its value.
On Thursday, June 14, 2012 6:46:34 PM UTC+5:30, utsav sharma wrote:
it can be done using map in c++
On Thu, Jun 14, 2012 at 4:23 PM, Mohit Rathi mohit08...@iiitd.ac.inwrote:
Hashmap can be used for effective retreival..
On Thu, Jun 14, 2012 at 4:23 PM, Mohit Rathi mohit08...@iiitd.ac.in wrote:
arr1 = [abc,xyz,lmn,def]
arr2 = [3,6,2,8]
if user enters xyz then 6 will be printed
else
if xyz doesn't exist in arr1 then ask for a number and add them in
respective
can be done with O(n^2) time complexity..
can it be done with O(n) complexity ???
On 6/3/12, utsav sharma utsav.sharm...@gmail.com wrote:
given a string tell wether it is valid or not.
string is valid if there is no substring which have the same substring
following it.
these strings are not
given a string tell wether it is valid or not.
string is valid if there is no substring which have the same substring
following it.
these strings are not valid:- stringstring,geek123123rt,
abcadabcad,strngstingstrngsting
--
You received this message because you are subscribed to the Google
array of bits?
if the current integer is present set the bit if else make it zero,
searching, insertion and deletion all in O(1) time.
On Thu, May 24, 2012 at 4:15 PM, rishabh shukla rockrishabh.mn...@gmail.com
wrote:
Suggest a data structure for storing million trillion numbers efficiently
What is the purpose of these numbers, if the idea is to manage a free pool,
then probably 10-ary-tree is the solution. May be Tiger Tree Hash a better
answer where it is tree to say level 7 and then for rest three digits it
become hash table. This way, the chunks can be kept on different machines
refer http://www.cs.bell-labs.com/cm/cs/pearls/sol01.html
Best Regards
Ashish Goel
Think positive and find fuel in failure
+919985813081
+919966006652
On Thu, May 24, 2012 at 6:00 PM, Ashish Goel ashg...@gmail.com wrote:
What is the purpose of these numbers, if the idea is to manage a free
No limit on #nodes and #edges.
On Thu, Apr 26, 2012 at 1:06 PM, bharat b bagana.bharatku...@gmail.comwrote:
In input, he mentions #nodes and #edges of each nodes has, right?
create an array of linked lists.. each index in the array represents the
node number and the linked list of that
@bharat: +1
On Thu, Apr 26, 2012 at 1:06 PM, bharat b bagana.bharatku...@gmail.com wrote:
create an array of linked lists.. each index in the array represents the
node number and the linked list of that represents edges of that node.
--
You received this message because you are subscribed to
In input, he mentions #nodes and #edges of each nodes has, right?
create an array of linked lists.. each index in the array represents the
node number and the linked list of that represents edges of that node.
Am I right?
On Wed, Apr 25, 2012 at 5:40 PM, Radhakrishnan Venkataramani
What will be the size of the array? You don't know the number of nodes in
the graph. Implementing table doubling would be tedious.
If they asked for a specific language implementation then for c++ you can
use a vector of linked lists.
Otherwise a linked list of pointers to head of linked lists
How will you implement a graph data structure ?
Give an linked implementation as we do not know how many nodes will be
there and how many edges will be there.
Make a copy of this graph..
--
You received this message because you are subscribed to the Google Groups
Algorithm Geeks group.
To post
@Neeraj : will u pls explain u'r logic ...
On 1/19/12, NEERAJ KODDHAN neerajdc...@gmail.com wrote:
int[] a = new int[2*n];
put(a, n);
static void put(int[] a,int i){
if(i0){
for(int j=0;ja.length-i-1;j++){
if(a[j]==0 a[j+i+1]==0){
a[j]=i;
a[j+i+1]=i;
put(a, i-1);
a[j]=0;
thats a brute force solution...
can u expalin the complexity..i think its O(n^2)
and also there exist no solution for n 3
On Thu, Jan 19, 2012 at 3:36 PM, bharat b bagana.bharatku...@gmail.comwrote:
@Neeraj : will u pls explain u'r logic ...
On 1/19/12, NEERAJ KODDHAN neerajdc...@gmail.com
ignore my last comment.. misunderstood
On Thu, Jan 19, 2012 at 1:04 PM, Prakash D cegprak...@gmail.com wrote:
why can't u simply place it as 1 2 3 4 5 6 7 1 2 3 4 5 6 7?
On Thu, Jan 19, 2012 at 2:05 AM, NEERAJ KODDHAN neerajdc...@gmail.comwrote:
int[] a = new int[2*n];
put(a, n);
static
why can't u simply place it as 1 2 3 4 5 6 7 1 2 3 4 5 6 7?
On Thu, Jan 19, 2012 at 2:05 AM, NEERAJ KODDHAN neerajdc...@gmail.comwrote:
int[] a = new int[2*n];
put(a, n);
static void put(int[] a,int i){
if(i0){
for(int j=0;ja.length-i-1;j++){
if(a[j]==0 a[j+i+1]==0){
a[j]=i;
@Neeraj
Thanx for providing the algo
On Thu, Jan 19, 2012 at 7:18 PM, rahul patil
rahul.deshmukhpa...@gmail.comwrote:
Looks like classic example of backtrack !!!
On Thu, Jan 19, 2012 at 1:05 PM, Prakash D cegprak...@gmail.com wrote:
ignore my last comment.. misunderstood
On Thu, Jan 19,
Coding Geek, if you have understood the algo provided by Neeraj, request
you to explain the logic please.
Best Regards
Ashish Goel
Think positive and find fuel in failure
+919985813081
+919966006652
On Thu, Jan 19, 2012 at 8:03 PM, Coding Geek codinggee...@gmail.com wrote:
@Neeraj
Thanx for
@ Neeraj: Plz explain ur logic.
--
Ravi Shankar
MCA 2nd Year
Department Of Computer Science
University Of Delhi
--
You received this message because you are subscribed to the Google Groups
Algorithm Geeks group.
To post to this group, send email to algogeeks@googlegroups.com.
To unsubscribe
@all : if see the code closely ...logic is simple.
code is just trying many permutation to find an answer.
say input = 6
now assuming that 6 will be placed at position arr[i] and arr[j+i+1] . it
will put that value and move further to find next possible location for
input-1;
at any point of time
@all Please check the Backtracking examples at
http://www.geeksforgeeks.org/archives/tag/backtracking.
You will understand the logic.
In this examples first we fix a no. onto some position. After we check for
other no. if any of the no. do not fit according to property we move back
and reset all
Place N number from 1 to N, in 2N positions in such a way so that there are
Exactly “n” number of cells between two placed locations of number “n”.
Write a program to display numbers placed in this way.
Example:-
(1) One of the possible placement for 7 numbers in 14 positions is :
5 7 2 3 6 2 5
int[] a = new int[2*n];
put(a, n);
static void put(int[] a,int i){
if(i0){
for(int j=0;ja.length-i-1;j++){
if(a[j]==0 a[j+i+1]==0){
a[j]=i;
a[j+i+1]=i;
put(a, i-1);
a[j]=0;
a[j+i+1]=0;
}
}
}else if(i==0){
for (int k : a) {
System.out.print(k + );
}
System.out.println();
}
}
On Wed, Jan
@utkarsh: in yr code it shud be two-- after the swap function and not
before for case 2
On Thu, Nov 10, 2011 at 1:25 PM, UTKARSH SRIVASTAV
usrivastav...@gmail.comwrote:
sorry it was incomplete
On Fri, Nov 11, 2011 at 2:53 AM, UTKARSH SRIVASTAV
usrivastav...@gmail.com wrote:
one = zero =
also I dont think that for case 0 we do not need to have one ++. I guess it
fails for this example
2200101
On Mon, Jan 2, 2012 at 5:36 PM, Arun Vishwanathan aaron.nar...@gmail.comwrote:
@utkarsh: in yr code it shud be two-- after the swap function and not
before for case 2
On Thu, Nov 10,
Hi
Has anyone appeared for interview in Amazon India? Could anyone please
suggest how the interview pattern is? What are the best URL's where we can
find good material to prepare for the interview? Any sample interview
questions would really help.
Thanks
--
You received this message because
I think smallest will be having just one character . it can be a or b or c.
On Sat, Nov 12, 2011 at 3:07 PM, Snoopy Me thesnoop...@gmail.com wrote:
Given a string consisting of a,b and c's, we can perform the following
operation:
Take any two adjacent distinct characters and replace it with
Given a string consisting of a,b and c's, we can perform the following
operation:
Take any two adjacent distinct characters and replace it with the
third character. For example, if 'a' and 'c' are adjacent, they can
replaced with 'b'.
What is the smallest string which can result by applying this
sorry it was incomplete
On Fri, Nov 11, 2011 at 2:53 AM, UTKARSH SRIVASTAV
usrivastav...@gmail.comwrote:
one = zero = 0;
two = n-1; //n is length of string
while(two=one)
{
switch(a[one])
{
case '0' : swap(a[zero],z[one]);
one++;zero++;break;
case '1' :
one = zero = 0;
two = n-1; //n is length of string
while(two=one)
{
switch(a[one])
On Mon, Oct 24, 2011 at 9:50 PM, praveen raj praveen0...@gmail.com wrote:
This can be done in O(n)..
first shift all the 2's to the right side in O(n)...
then again shift 1to the right shift b efore
count the number of 0s 1s 2s.then store os first den 1s followed by 2s
On Sat, Sep 24, 2011 at 9:55 AM, Anup Ghatage ghat...@gmail.com wrote:
Is this like the segregating all the 1's to the right and the 0's to the
left
or am i missing something?
On Sat, Sep 24, 2011 at 9:39 AM, VIHARRI
dutch national flag problem..search in wiki...classical.
On Sat, Sep 24, 2011 at 9:39 AM, VIHARRI viharri@gmail.com wrote:
You are given a string (consisting of 0's, 1's or 2's) where 0
represents a blue ball, 1 a
red ball, and 2 a black ball. Using only swap operations (counting
sort
we cant traverse the string twice...
if there is an error in my logic then plz tell
my logic is:
we have to take starting and ending indexes for '0','1','2' like below
0 1 2
starting_index
ending_index
now suppose our string 102112011
so we
i think this travels only once ... correct me if am wrong
#includestdio.h
#includestring.h
#define SWAP(a,b,c) (c)=(a),(a)=(b),(b)=(c)
int main()
{
int t,x;
scanf(%d,t);
while(t--)
{
char str[100];
scanf(%s,str);
int
dutch national flag problem :)
On Sat, Sep 24, 2011 at 3:45 PM, Dheeraj Sharma dheerajsharma1...@gmail.com
wrote:
i think this travels only once ... correct me if am wrong
#includestdio.h
#includestring.h
#define SWAP(a,b,c) (c)=(a),(a)=(b),(b)=(c)
int main()
{
int t,x;
I think this will do the same: -
#include stdafx.h
#include stdlib.h
void swap(int *a, int start, int end)
{
int temp;
temp = *(a + start);
*(a + start) = *(a + end);
*(a + end) = temp;
}
int _tmain(int argc, _TCHAR* argv[])
{
int minIndex=0, maxIndex=8;
void sort012(int a[],int n){
int i = 0, s = 0, last = n-1;
while(i=last){
if(a[i] == 0 i!=s)
{
swap(a[i], a[s]);
s++;
}
else if(a[i] == 2 i!=last)
{
swap(a[i], a[last]);
last--;
}
else
i++;
}
}
On Sat, Sep 24, 2011 at 5:13 PM,
Classic problem http://en.wikipedia.org/wiki/Dutch_national_flag_problem
On Sat, Sep 24, 2011 at 5:15 PM, Ankur Garg ankurga...@gmail.com wrote:
void sort012(int a[],int n){
int i = 0, s = 0, last = n-1;
while(i=last){
if(a[i] == 0 i!=s)
{
swap(a[i], a[s]);
Keep two pointers - p1 and p2
p1 points at the index just after last 0 such that there are all zero's
before it.
p2 points at the entry just before last 2, and there are all 2's after it.
*example*- 0010201201222
p1 = 2; p2 = 9;
*Pseudo code - *
p1 = 0;
p2 = n-1;
i = 0;
while(in)
if(A[i])
@guarav true
@others no point in sending the code describe your logic... anyway link
provided by guarav is suffice to solve the problem
On Sat, Sep 24, 2011 at 5:26 PM, Gaurav Aggarwal gaurav91.2...@gmail.comwrote:
Classic problem http://en.wikipedia.org/wiki/Dutch_national_flag_problem
You are given a string (consisting of 0's, 1's or 2's) where 0
represents a blue ball, 1 a
red ball, and 2 a black ball. Using only swap operations (counting
sort not allowed)
rearrange the string such that all blue balls are together on one
side, followed by all red
balls, and then all black
Is this like the segregating all the 1's to the right and the 0's to the
left
or am i missing something?
On Sat, Sep 24, 2011 at 9:39 AM, VIHARRI viharri@gmail.com wrote:
You are given a string (consisting of 0's, 1's or 2's) where 0
represents a blue ball, 1 a
red ball, and 2 a black
char str[100],t;
scanf(%s,str);
char ch='0';
int i=0,j=0;
while(jstrlen(str))
{
if(str[j]==ch)
{
SWAP(str[i],str[j],t);
How much space does a pointer and integer takes?
For eg :-
int a;
int *a;
--
You received this message because you are subscribed to the Google Groups
Algorithm Geeks group.
To view this discussion on the web visit
https://groups.google.com/d/msg/algogeeks/-/RmPHywrTUbkJ.
To post to this
@Ravi
+1
--
You received this message because you are subscribed to the Google Groups
Algorithm Geeks group.
To view this discussion on the web visit
https://groups.google.com/d/msg/algogeeks/-/E0NIFwY150EJ.
To post to this group, send email to algogeeks@googlegroups.com.
To unsubscribe from
Hi friends,
Is there anyone who given the first telephonic round of Amazon recently.
Please share the details with us.
--
You received this message because you are subscribed to the Google Groups
Algorithm Geeks group.
To view this discussion on the web visit
1 - 100 of 144 matches
Mail list logo