Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #55345

Re: Lowest Value in List

Path csiph.com!usenet.pasdenom.info!weretis.net!feeder1.news.weretis.net!feeder.erje.net!eu.feeder.erje.net!xlned.com!feeder7.xlned.com!newsfeed.xs4all.nl!newsfeed3.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail
Return-Path <ganeshsahni07@gmail.com>
X-Original-To python-list@python.org
Delivered-To python-list@mail.python.org
X-Spam-Status OK 0.006
X-Spam-Evidence '*H*': 0.99; '*S*': 0.00; 'python.': 0.02; 'value,': 0.04; 'beginner': 0.05; 'element': 0.07; 'problem:': 0.07; 'suppose': 0.07; '[0,': 0.09; '[1,': 0.09; 'imported': 0.09; 'thus,': 0.09; 'cc:addr:python-list': 0.11; '-1,': 0.16; 'ascending': 0.16; 'enough.': 0.16; 'fine.': 0.16; 'heapq': 0.16; 'ravi': 0.16; 'ways:': 0.16; 'elements': 0.16; 'wrote:': 0.18; 'wed,': 0.18; 'module': 0.19; 'trying': 0.19; 'import': 0.22; 'portion': 0.22; 'cc:addr:python.org': 0.22; 'this?': 0.23; 'merge': 0.24; 'skip:l 30': 0.24; 'helpful': 0.24; 'cc:2**0': 0.24; 'cc:no real name:2**0': 0.24; 'sort': 0.25; 'order.': 0.26; 'header:In-Reply-To:1': 0.27; 'tried': 0.27; 'message- id:@mail.gmail.com': 0.30; 'url:mailman': 0.30; 'gives': 0.31; '>>>>': 0.31; 'lists': 0.32; 'another': 0.32; 'url:python': 0.33; 'becomes': 0.33; 'problem': 0.35; 'skip:s 30': 0.35; 'convert': 0.35; 'received:google.com': 0.35; 'add': 0.35; 'like,': 0.36; 'subject:List': 0.36; 'url:listinfo': 0.36; 'next': 0.36; 'url:org': 0.36; 'should': 0.36; 'wrong': 0.37; 'two': 0.37; 'list': 0.37; 'step': 0.37; 'lists.': 0.38; 'issue': 0.38; 'pm,': 0.38; 'url:mail': 0.40; 'how': 0.40; 'solve': 0.60; 'took': 0.61; 'kindly': 0.61; 'first': 0.61; 'back': 0.62; 'making': 0.63; 'address': 0.63; 'group,': 0.63; 'sum': 0.64; 'more': 0.64; 'taking': 0.65; 'dear': 0.65; 'to:addr:gmail.com': 0.65; 'approaches': 0.68; 'skip:r 30': 0.69; 'lowest': 0.74; 'increase': 0.74; 'subject:Value': 0.84; 'thanking': 0.84; 'approach.': 0.91; '2013': 0.98
DKIM-Signature v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=P+3/7BGIfVxKN5RChI0NGuzcCv9wyP8PsGV8yLApfbY=; b=FvXO0qH59nqz/7uWgwAG2fa7BN+yiXZZtaoIFWF4m0r3TQ/qApyFSTmQ8hHQPRjanm gGUJRaf8xqjBN4a+L7jhoD/BKPiK7Z6ZE9YfetVasceclToU0N8qHFXOnbSPpeDQHsMj 3tlLlB/JihhMYkIKHB0Pa5sTzvgPnEivS1s+aPip82sP4J3E2nl2ikZOoNPddPjqzofZ hqhvTAGQvVizu9K2ClWoI0MBo0xtXUu6C5HK9eiEJ0BTKH8BFiJi+5jMaF+UbYSd+BHG F/mFxDoy5HfJEnUC/49JbRAfFvWJKdT3msDdNoWInY+oisnUuJAFHeH0VsG+VWTUZW8T pLOQ==
MIME-Version 1.0
X-Received by 10.68.2.166 with SMTP id 6mr2622870pbv.165.1380722705533; Wed, 02 Oct 2013 07:05:05 -0700 (PDT)
In-Reply-To <dc6edb07-4f5a-4b1a-aa40-b287325196a2@googlegroups.com>
References <dc6edb07-4f5a-4b1a-aa40-b287325196a2@googlegroups.com>
Date Wed, 2 Oct 2013 19:35:04 +0530
Subject Re: Lowest Value in List
From Ravi Sahni <ganeshsahni07@gmail.com>
To subhabangalore@gmail.com
Content-Type text/plain; charset=ISO-8859-1
X-Mailman-Approved-At Wed, 02 Oct 2013 16:21:35 +0200
Cc python-list@python.org
X-BeenThere python-list@python.org
X-Mailman-Version 2.1.15
Precedence list
List-Id General discussion list for the Python programming language <python-list.python.org>
List-Unsubscribe <https://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-list/>
List-Post <mailto:python-list@python.org>
List-Help <mailto:python-list-request@python.org?subject=help>
List-Subscribe <https://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe>
Newsgroups comp.lang.python
Message-ID <mailman.633.1380723697.18130.python-list@python.org> (permalink)
Lines 89
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1380723697 news.xs4all.nl 15979 [2001:888:2000:d::a6]:54670
X-Complaints-To abuse@xs4all.nl
Xref csiph.com comp.lang.python:55345

Show key headers only | View raw


On Wed, Oct 2, 2013 at 3:34 PM,  <subhabangalore@gmail.com> wrote:
> Dear Group,
>
> I am trying to work out a solution to the following problem in Python.
>
> The Problem:
> Suppose I have three lists.
> Each list is having 10 elements in ascending order.
> I have to construct one list having 10 elements which are of the lowest value among these 30 elements present in the three given lists.
>
> The Solution:
>
> I tried to address the issue in the following ways:
>
> a) I took three lists, like,
> list1=[1,2,3,4,5,6,7,8,9,10]
> list2=[0,1,2,3,4,5,6,7,8,9]
> list3=[-5,-4,-3,-2,-1,0,1,2,3,4]
>
> I tried to make sum and convert them as set to drop the repeating elements:
> set_sum=set(list1+list2+list3)
> set([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, -1, -5, -4, -3, -2])
>
> In the next step I tried to convert it back to list as,
> list_set=list(set_sum)
> gave the value as,
> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, -1, -5, -4, -3, -2]
>
> Now, I imported heapq as,
> import heapq
>
> and took the result as,
> result=heapq.nsmallest(10,list_set)
> it gave as,
> [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4]
>
> b) I am thinking to work out another approach.
> I am taking the lists again as,
>
> list1=[1,2,3,4,5,6,7,8,9,10]
> list2=[0,1,2,3,4,5,6,7,8,9]
> list3=[-5,-4,-3,-2,-1,0,1,2,3,4]
>
> as they are in ascending order, I am trying to take first four/five elements of each list,like,
>
> list1_4=list1[:4]
>>>> list2_4=list2[:4]
>>>> list3_4=list3[:4]
>
> Now, I am trying to add them as,
>
> list11=list1_4+list2_4+list3_4
>
> thus, giving us the result
>
> [1, 2, 3, 4, 0, 1, 2, 3, -5, -4, -3, -2]
>
> Now, we are trying to sort the list of the set of the sum as,
>
> sort_sum=sorted(list(set(list11)))
>
> giving us the required result as,
>
> [-5, -4, -3, -2, 0, 1, 2, 3, 4]
>
> If by taking the value of each list portion as 4 gives as less number of elements in final value, as we are making set to avoid repeating numbers, we increase element count by one or two and if final result becomes more than 10 we take first ten.
>
> Are these approaches fine. Or should we think some other way.
>
> If any learned member of the group can kindly let me know how to solve I would be helpful enough.
>
> Thanking in Advance,
> Subhabrata.
>
>
> --
> https://mail.python.org/mailman/listinfo/python-list

[Disclaimer: Beginner myself]

The heapq module has merge
Since the lists are already sorted what's wrong with just this?

list(merge(list1, list2, list3))[:10]



-- 
- Ravi

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Lowest Value in List subhabangalore@gmail.com - 2013-10-02 03:04 -0700
  Re: Lowest Value in List Steven D'Aprano <steve@pearwood.info> - 2013-10-02 10:10 +0000
  Re: Lowest Value in List Antoon Pardon <antoon.pardon@rece.vub.ac.be> - 2013-10-02 12:42 +0200
  Re: Lowest Value in List dvghana@gmail.com - 2013-10-02 05:56 -0700
  Re: Lowest Value in List Ravi Sahni <ganeshsahni07@gmail.com> - 2013-10-02 19:35 +0530
  Re: Lowest Value in List Peter Otten <__peter__@web.de> - 2013-10-03 13:12 +0200

csiph-web