note description: "Two-way lists, kept sorted" library: "Free implementation of ELKS library" legal: "See notice at end of class." status: "See notice at end of class." names: sorted_two_way_list, sorted_struct, sequence representation: linked access: index, cursor, membership, min, max contents: generic date: "$Date: 2018-11-14 15:15:17 +0000 (Wed, 14 Nov 2018) $" revision: "$Revision: 102463 $" class interface PART_SORTED_TWO_WAY_LIST [G -> PART_COMPARABLE] create make, make_from_iterable create {PART_SORTED_TWO_WAY_LIST} make_sublist feature -- Element change extend (v: like item) -- Put v at proper position in list. -- The cursor ends up on the newly inserted -- item. feature -- Removal prune_all (v: like item) -- Remove all items identical to v. -- (Reference or object equality, -- based on object_comparison.) -- Leave cursor off. feature -- Status report sorted: BOOLEAN -- is the structures topologically sorted -- i.e i < j implies not i_th (i) > i_th (j) feature -- Transformation sort -- sort the list -- Has O(count * log (count)) complexity. note copyright: "Copyright (c) 1984-2018, Eiffel Software and others" license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)" source: "[ Eiffel Software 5949 Hollister Ave., Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end -- class PART_SORTED_TWO_WAY_LIST
Generated by ISE EiffelStudio