Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								28224f897a 
								
							 
						 
						
							
							
								
								Improve the documented advice on how to best use heapq.heapreplace().  
							
							
							
						 
						
							2004-06-20 09:07:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								2e3dfaf707 
								
							 
						 
						
							
							
								
								Install C version of heapq.nsmallest().  
							
							
							
						 
						
							2004-06-13 05:26:33 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								b25aa36f83 
								
							 
						 
						
							
							
								
								Improve the memory performance and speed of heapq.nsmallest() by using  
							
							... 
							
							
							
							an alternate algorithm when the number of selected items is small
relative to the full iterable. 
							
						 
						
							2004-06-12 08:33:36 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								33ecffb65a 
								
							 
						 
						
							
							
								
								SF patch  #969791 : Add nlargest() and nsmallest() to heapq.  
							
							
							
						 
						
							2004-06-10 05:03:17 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								c46cb2a1a9 
								
							 
						 
						
							
							
								
								* Restore the pure python version of heapq.py.  
							
							... 
							
							
							
							* Mark the C version as private and only use when available. 
							
						 
						
							2004-04-19 19:06:21 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								b3af1813eb 
								
							 
						 
						
							
							
								
								Convert heapq.py to a C implementation.  
							
							
							
						 
						
							2003-11-08 10:24:38 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								85c20a41df 
								
							 
						 
						
							
							
								
								Implement and apply PEP 322, reverse iteration  
							
							
							
						 
						
							2003-11-06 14:06:48 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Walter Dörwald 
								
							 
						 
						
							
							
							
							
								
							
							
								f0dfc7ac5c 
								
							 
						 
						
							
							
								
								Fix a bunch of typos in documentation, docstrings and comments.  
							
							... 
							
							
							
							(From SF patch #810751 ) 
							
						 
						
							2003-10-20 14:01:56 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Fred Drake 
								
							 
						 
						
							
							
							
							
								
							
							
								f2928eb017 
								
							 
						 
						
							
							
								
								Fix typo in comment.  
							
							
							
						 
						
							2002-11-13 14:38:17 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								a853cc6647 
								
							 
						 
						
							
							
								
								Added __all__.  
							
							
							
						 
						
							2002-10-30 06:15:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								5f7617b5f6 
								
							 
						 
						
							
							
								
								Fixed misspelling in comment.  
							
							
							
						 
						
							2002-08-11 18:28:09 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								469cdad822 
								
							 
						 
						
							
							
								
								Whitespace normalization.  
							
							
							
						 
						
							2002-08-08 20:19:19 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								3c8dd0c6e7 
								
							 
						 
						
							
							
								
								Simplify heapreplace() -- there's no need for an explicit test for  
							
							... 
							
							
							
							empty heap, since heap[0] raises the appropriate IndexError already. 
							
						 
						
							2002-08-07 18:58:11 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								6681de2455 
								
							 
						 
						
							
							
								
								_siftup():  __le__ is now the only comparison operator used on array  
							
							... 
							
							
							
							elements. 
							
						 
						
							2002-08-03 19:20:16 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								0cd53a6c37 
								
							 
						 
						
							
							
								
								Added new heapreplace(heap, item) function, to pop (and return) the  
							
							... 
							
							
							
							currently-smallest value, and add item, in one gulp.  See the second
N-Best algorithm in the test suite for a natural use. 
							
						 
						
							2002-08-03 10:10:10 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								657fe38241 
								
							 
						 
						
							
							
								
								Large code rearrangement to use better algorithms, in the sense of needing  
							
							... 
							
							
							
							substantially fewer array-element compares.  This is best practice as of
Kntuh Volume 3 Ed 2, and the code is actually simpler this way (although
the key idea may be counter-intuitive at first glance!  breaking out of
a loop early loses when it costs more to try to get out early than getting
out early saves).
Also added a comment block explaining the difference and giving some real
counts; demonstrating that heapify() is more efficient than repeated
heappush(); and emphasizing the obvious point thatlist.sort() is more
efficient if what you really want to do is sort. 
							
						 
						
							2002-08-03 09:56:52 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								aa7d24319e 
								
							 
						 
						
							
							
								
								Minor fiddling, including a simple class to implement a heap iterator  
							
							... 
							
							
							
							in the test file.  I have docs for heapq.heapify ready to check in, but
Jack appears to have left behind a stale lock in the Doc/lib directory. 
							
						 
						
							2002-08-03 02:11:26 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								fbb299226d 
								
							 
						 
						
							
							
								
								Augment credits.  
							
							
							
						 
						
							2002-08-02 22:01:37 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								28c25527c2 
								
							 
						 
						
							
							
								
								Hmm!  I thought I checked this in before!  Oh well.  
							
							... 
							
							
							
							Added new heapify() function, which transforms an arbitrary list into a
heap in linear time; that's a fundamental tool for using heaps in real
life <wink>.
Added heapyify() test.  Added a "less naive" N-best algorithm to the test
suite, and noted that this could actually go much faster (building on
heapify()) if we had max-heaps instead of min-heaps (the iterative method
is appropriate when all the data isn't known in advance, but when it is
known in advance the tradeoffs get murkier). 
							
						 
						
							2002-08-02 21:48:06 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								4b48d6b37c 
								
							 
						 
						
							
							
								
								Add a PEP-263-style encoding turd^H^H^H^Hdeclaration, because there's  
							
							... 
							
							
							
							a c-cedilla in one of the docstrings. 
							
						 
						
							2002-08-02 20:23:56 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								62abc2f6ce 
								
							 
						 
						
							
							
								
								heappop():  Added comments; simplified and sped the code.  
							
							
							
						 
						
							2002-08-02 20:09:14 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								a0b3a00bc5 
								
							 
						 
						
							
							
								
								heappop():  Use "while True" instead of "while 1".  
							
							
							
						 
						
							2002-08-02 19:45:37 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tim Peters 
								
							 
						 
						
							
							
							
							
								
							
							
								d9ea39db84 
								
							 
						 
						
							
							
								
								Don't use true division where int division was intended.  For that matter,  
							
							... 
							
							
							
							don't use division at all. 
							
						 
						
							2002-08-02 19:16:44 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								37c3b2788b 
								
							 
						 
						
							
							
								
								Add Kevin O'Connor, author of the heapq code.  
							
							
							
						 
						
							2002-08-02 16:50:58 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido van Rossum 
								
							 
						 
						
							
							
							
							
								
							
							
								0a82438859 
								
							 
						 
						
							
							
								
								Adding the heap queue algorithm, per discussion in python-dev last  
							
							... 
							
							
							
							week. 
							
						 
						
							2002-08-02 16:44:32 +00:00