nope,
if both lists are of same length list 4 is not required and you save time to
deal with list 4
so, you have list 3 only
time reqd is O(3n)

3 passes approximately


On Mon, Feb 1, 2010 at 11:24 AM, Algoose Chase <harishp...@gmail.com> wrote:

> Thats true ! ,  The purpose is to add very long integers such that we cant
> use premative data types to represent them.
>
>  The point I was trying to prove is : you would need to go through multiple
> passes through the list(essentially to propagate carry) when you have
> conditions like No Reversing the original lists and no recursion and no to
> any extra memory usage.
>
> @ saurabh: Hope you have not considered the worst case before generalizing
> the running time to 2n+m .
>
> lets assume the 2 lists are of same size so n = m.This eliminates the need
> to find out m or to create list 4
> and lets assume the linked list are  5->5->5->5->5->5->5->5->5->5 and
>
> 4->4->4->4->4->4->4->4->4->5
> Only thing is you need to create list 3 (as u have mentioned) . Now its not
> possible to add the 2 lists through a single pass from left to right . This
> would need n passes on a linked list of size n  making the running time n^2.
>
>
>
> On Thu, Jan 28, 2010 at 5:51 AM, saurabh gupta <sgup...@gmail.com> wrote:
>
>> this defeats the purpose,
>> they are stored in linked list because they cannot be stored in a given
>> type.
>>
>>
>>
>> On Thu, Jan 28, 2010 at 3:25 AM, Deva R <r.deva...@gmail.com> wrote:
>>
>>> i faced this qn in ********* interview.
>>>
>>> best soln i could give was:
>>>
>>> - traverse each list and derive both the numbers.. something like below
>>>
>>>   node = list->head;
>>>   i=1; value =0;
>>>    while (node)
>>>    {  value = (node->data)*i +value;
>>>       i*=10;
>>>       node = node->next;
>>>    }
>>>
>>> - add both the numbers. u can either return the number or form a new list
>>> and return.
>>>
>>> i gave the code.. and its o(m+n), for lists of size m,n.
>>>
>>> -Deva
>>>
>>>
>>>
>>> On Wed, Jan 27, 2010 at 10:02 PM, saurabh gupta <sgup...@gmail.com>wrote:
>>>
>>>> step 1 is n not m
>>>> which makes it O(3n)
>>>>
>>>>
>>>> On Wed, Jan 27, 2010 at 9:54 PM, saurabh gupta <sgup...@gmail.com>wrote:
>>>>
>>>>> its not exponential
>>>>> time to find out m = m
>>>>> time to create list 3 = m
>>>>> time to create list 4 = n-m
>>>>> time to come up with proper added list (list 3 modification) = m
>>>>> time to merge list 3 and list 4 = n-m
>>>>>
>>>>> total time = 2n+m
>>>>>
>>>>> except step 1 all are reversals with approximately same constant and
>>>>> constant for step 1 is smaller
>>>>> so one can say
>>>>>
>>>>> O(2n+m)
>>>>>
>>>>>
>>>>> On Wed, Jan 27, 2010 at 5:26 PM, Anurag Bhatia <abhati...@gmail.com>wrote:
>>>>>
>>>>>> If that is the representation, then the lists have to be reversed.
>>>>>> Otherwise the time goes up exponentially.
>>>>>>
>>>>>> On Wed, Jan 27, 2010 at 5:19 PM, Algoose Chase <harishp...@gmail.com>
>>>>>> wrote:
>>>>>> > Condition:
>>>>>> > Can we do it keeping the original lists intact ? ie without
>>>>>> reversing it.
>>>>>> > I mean , No recursion & no Reversing ... is it possible ?
>>>>>> >
>>>>>> > @kumar :
>>>>>> > 15234 is represented as  1->5->2->3->4
>>>>>> >
>>>>>> > On Wed, Jan 27, 2010 at 4:09 PM, saurabh gupta <sgup...@gmail.com>
>>>>>> wrote:
>>>>>> >>
>>>>>> >> perhaps you mean,
>>>>>> >> reverse each link list O(n+m).
>>>>>> >> then sum each node with carryover maintained.
>>>>>> >>
>>>>>> >> On Wed, Jan 27, 2010 at 11:07 AM, Anurag Bhatia <
>>>>>> abhati...@gmail.com>
>>>>>> >> wrote:
>>>>>> >>>
>>>>>> >>> Let us take an example -
>>>>>> >>>
>>>>>> >>> Num 1 = 123456
>>>>>> >>> Num 2= 1234
>>>>>> >>> Link-1->Link-2->Link-3->Link-4->Link5->Link6
>>>>>> >>> Link-1->Link-2->Link-3->Link-4
>>>>>> >>>
>>>>>> >>> Add nodes into linkedlist 1 till either one of the list is not
>>>>>> null.
>>>>>> >>> Make sure you process the carry in each iteration.
>>>>>> >>>
>>>>>> >>>
>>>>>> >>> --AB
>>>>>> >>>
>>>>>> >>>
>>>>>> >>> On Tue, Jan 26, 2010 at 9:47 PM, Algoose Chase <
>>>>>> harishp...@gmail.com>
>>>>>> >>> wrote:
>>>>>> >>> > conditions:
>>>>>> >>> > NO extra memory (@ stack or Heap) at all. No recursion.
>>>>>> >>> >
>>>>>> >>> > Any body has got any hint about how to get this done ?
>>>>>> >>> >
>>>>>> >>> >
>>>>>> >>> >
>>>>>> >>> > --
>>>>>> >>> > 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 from this group, send email to
>>>>>> >>> > algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com>
>>>>>> .
>>>>>> >>> > For more options, visit this group at
>>>>>> >>> > http://groups.google.com/group/algogeeks?hl=en.
>>>>>> >>> >
>>>>>> >>>
>>>>>> >>> --
>>>>>> >>> You received this message because you are subscribed to the Google
>>>>>> Groups
>>>>>> >>> "Algorithm Geeks" group.
>>>>>> >>> To post to this group, send email to algoge...@googlegroups.com.
>>>>>> >>> To unsubscribe from this group, send email to
>>>>>> >>> algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com>
>>>>>> .
>>>>>> >>> For more options, visit this group at
>>>>>> >>> http://groups.google.com/group/algogeeks?hl=en.
>>>>>> >>>
>>>>>> >>
>>>>>> >> --
>>>>>> >> You received this message because you are subscribed to the Google
>>>>>> Groups
>>>>>> >> "Algorithm Geeks" group.
>>>>>> >> To post to this group, send email to algoge...@googlegroups.com.
>>>>>> >> To unsubscribe from this group, send email to
>>>>>> >> algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com>
>>>>>> .
>>>>>> >> For more options, visit this group at
>>>>>> >> http://groups.google.com/group/algogeeks?hl=en.
>>>>>> >
>>>>>> > --
>>>>>> > You received this message because you are subscribed to the Google
>>>>>> Groups
>>>>>> > "Algorithm Geeks" group.
>>>>>> > To post to this group, send email to algoge...@googlegroups.com.
>>>>>> > To unsubscribe from this group, send email to
>>>>>> > algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com>
>>>>>> .
>>>>>> > For more options, visit this group at
>>>>>> > http://groups.google.com/group/algogeeks?hl=en.
>>>>>> >
>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to the Google
>>>>>> Groups "Algorithm Geeks" group.
>>>>>> To post to this group, send email to algoge...@googlegroups.com.
>>>>>> To unsubscribe from this group, send email to
>>>>>> algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com>
>>>>>> .
>>>>>> For more options, visit this group at
>>>>>> http://groups.google.com/group/algogeeks?hl=en.
>>>>>>
>>>>>>
>>>>>
>>>>  --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Algorithm Geeks" group.
>>>> To post to this group, send email to algoge...@googlegroups.com.
>>>> To unsubscribe from this group, send email to
>>>> algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com>
>>>> .
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/algogeeks?hl=en.
>>>>
>>>
>>>  --
>>> You received this message because you are subscribed to the Google Groups
>>> "Algorithm Geeks" group.
>>> To post to this group, send email to algoge...@googlegroups.com.
>>> To unsubscribe from this group, send email to
>>> algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com>
>>> .
>>> For more options, visit this group at
>>> http://groups.google.com/group/algogeeks?hl=en.
>>>
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "Algorithm Geeks" group.
>> To post to this group, send email to algoge...@googlegroups.com.
>> To unsubscribe from this group, send email to
>> algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com>
>> .
>> For more options, visit this group at
>> http://groups.google.com/group/algogeeks?hl=en.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> To post to this group, send email to algoge...@googlegroups.com.
> To unsubscribe from this group, send email to
> algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com>
> .
> For more options, visit this group at
> http://groups.google.com/group/algogeeks?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algoge...@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to