diff options
author | Dan Albert <danalbert@google.com> | 2015-06-17 15:33:58 -0700 |
---|---|---|
committer | Dan Albert <danalbert@google.com> | 2015-06-17 15:33:58 -0700 |
commit | 7a1d76c6c5b354abbba43308d5061eb6ff96d3ea (patch) | |
tree | 78a639d039e517565afa35d7af021a6967bec0d9 /binutils-2.20.1/include/fibheap.h | |
parent | c39479f4ab4d372b518957871e1f205a03e7c3d6 (diff) | |
download | toolchain_binutils-7a1d76c6c5b354abbba43308d5061eb6ff96d3ea.zip toolchain_binutils-7a1d76c6c5b354abbba43308d5061eb6ff96d3ea.tar.gz toolchain_binutils-7a1d76c6c5b354abbba43308d5061eb6ff96d3ea.tar.bz2 |
Remove old versions of binutils.
Change-Id: If634d8d30cfa8c88ca3ba59691a0df4ee5596f85
Diffstat (limited to 'binutils-2.20.1/include/fibheap.h')
-rw-r--r-- | binutils-2.20.1/include/fibheap.h | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/binutils-2.20.1/include/fibheap.h b/binutils-2.20.1/include/fibheap.h deleted file mode 100644 index a3d09dd..0000000 --- a/binutils-2.20.1/include/fibheap.h +++ /dev/null @@ -1,95 +0,0 @@ -/* A Fibonacci heap datatype. - Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2009 - Free Software Foundation, Inc. - Contributed by Daniel Berlin (dan@cgsoftware.com). - -This file is part of GCC. - -GCC is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GCC is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GCC; see the file COPYING. If not, write to -the Free Software Foundation, 51 Franklin Street - Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* Fibonacci heaps are somewhat complex, but, there's an article in - DDJ that explains them pretty well: - - http://www.ddj.com/articles/1997/9701/9701o/9701o.htm?topic=algoritms - - Introduction to algorithms by Corman and Rivest also goes over them. - - The original paper that introduced them is "Fibonacci heaps and their - uses in improved network optimization algorithms" by Tarjan and - Fredman (JACM 34(3), July 1987). - - Amortized and real worst case time for operations: - - ExtractMin: O(lg n) amortized. O(n) worst case. - DecreaseKey: O(1) amortized. O(lg n) worst case. - Insert: O(2) amortized. O(1) actual. - Union: O(1) amortized. O(1) actual. */ - -#ifndef _FIBHEAP_H_ -#define _FIBHEAP_H_ - -#include "ansidecl.h" - -#ifdef __cplusplus -extern "C" { -#endif - -typedef long fibheapkey_t; - -typedef struct fibheap -{ - size_t nodes; - struct fibnode *min; - struct fibnode *root; -} *fibheap_t; - -typedef struct fibnode -{ - struct fibnode *parent; - struct fibnode *child; - struct fibnode *left; - struct fibnode *right; - fibheapkey_t key; - void *data; -#if defined (__GNUC__) && (!defined (SIZEOF_INT) || SIZEOF_INT < 4) - __extension__ unsigned long int degree : 31; - __extension__ unsigned long int mark : 1; -#else - unsigned int degree : 31; - unsigned int mark : 1; -#endif -} *fibnode_t; - -extern fibheap_t fibheap_new (void); -extern fibnode_t fibheap_insert (fibheap_t, fibheapkey_t, void *); -extern int fibheap_empty (fibheap_t); -extern fibheapkey_t fibheap_min_key (fibheap_t); -extern fibheapkey_t fibheap_replace_key (fibheap_t, fibnode_t, - fibheapkey_t); -extern void *fibheap_replace_key_data (fibheap_t, fibnode_t, - fibheapkey_t, void *); -extern void *fibheap_extract_min (fibheap_t); -extern void *fibheap_min (fibheap_t); -extern void *fibheap_replace_data (fibheap_t, fibnode_t, void *); -extern void *fibheap_delete_node (fibheap_t, fibnode_t); -extern void fibheap_delete (fibheap_t); -extern fibheap_t fibheap_union (fibheap_t, fibheap_t); - -#ifdef __cplusplus -} -#endif - -#endif /* _FIBHEAP_H_ */ |