223 lines
5.9 KiB
Groff
223 lines
5.9 KiB
Groff
.\" Copyright (c) 1990, 1991, 1993
|
||
.\" The Regents of the University of California. All rights reserved.
|
||
.\"
|
||
.\" This code is derived from software contributed to Berkeley by
|
||
.\" the American National Standards Committee X3, on Information
|
||
.\" Processing Systems.
|
||
.\"
|
||
.\" Redistribution and use in source and binary forms, with or without
|
||
.\" modification, are permitted provided that the following conditions
|
||
.\" are met:
|
||
.\" 1. Redistributions of source code must retain the above copyright
|
||
.\" notice, this list of conditions and the following disclaimer.
|
||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||
.\" notice, this list of conditions and the following disclaimer in the
|
||
.\" documentation and/or other materials provided with the distribution.
|
||
.\" 3. All advertising materials mentioning features or use of this software
|
||
.\" must display the following acknowledgement:
|
||
.\" This product includes software developed by the University of
|
||
.\" California, Berkeley and its contributors.
|
||
.\" 4. Neither the name of the University nor the names of its contributors
|
||
.\" may be used to endorse or promote products derived from this software
|
||
.\" without specific prior written permission.
|
||
.\"
|
||
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
||
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
||
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||
.\" SUCH DAMAGE.
|
||
.\"
|
||
.\" @(#)qsort.3 8.1 (Berkeley) 6/4/93
|
||
.\" %FreeBSD: src/lib/libc/stdlib/qsort.3,v 1.4.2.4 2001/08/31 10:15:15 ru Exp %
|
||
.\" $FreeBSD$
|
||
.\"
|
||
.Dd June 4, 1993
|
||
.Dt QSORT 3
|
||
.Os
|
||
.Sh ̾<EFBFBD><EFBFBD>
|
||
.Nm qsort , heapsort , mergesort
|
||
.Nd <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȴؿ<EFBFBD>
|
||
.Sh <EFBFBD>饤<EFBFBD>֥<EFBFBD><EFBFBD><EFBFBD>
|
||
.Lb libc
|
||
.Sh <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fd #include <stdlib.h>
|
||
.Ft void
|
||
.Fn qsort "void *base" "size_t nmemb" "size_t size" "int (*compar)(const void *, const void *)"
|
||
.Ft int
|
||
.Fn heapsort "void *base" "size_t nmemb" "size_t size" "int (*compar)(const void *, const void *)"
|
||
.Ft int
|
||
.Fn mergesort "void *base" "size_t nmemb" "size_t size" "int (*compar)(const void *, const void *)"
|
||
.Sh <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn qsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD>ϡ<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥν<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǡ<EFBFBD><EFBFBD>褦<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˥<EFBFBD><EFBFBD><EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȤǤ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn heapsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD>ϡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥν<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǤǤ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn mergesort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD>ϡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¤<EFBFBD><EFBFBD>Ǥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ս<EFBFBD><EFBFBD>Τ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><EFBFBD>롢
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥν<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǤǤ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Pp
|
||
.Fn qsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn heapsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD>ϡ<EFBFBD>
|
||
.Fa base
|
||
<EFBFBD>ˤ<EFBFBD><EFBFBD>äƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ф<EFBFBD><EFBFBD>ؤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Fa nmemb
|
||
<EFBFBD><EFBFBD><EFBFBD>֥<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD>ƥ<EFBFBD><EFBFBD>֥<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȤΥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϡ<EFBFBD>
|
||
.Fa size
|
||
<EFBFBD>ǻ<EFBFBD><EFBFBD>ꤷ<EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn mergesort
|
||
<EFBFBD><EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD>褦<EFBFBD><EFBFBD>ư<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fa size
|
||
<EFBFBD><EFBFBD>
|
||
.Dq "sizeof(void *) / 2"
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>礭<EFBFBD><EFBFBD><EFBFBD>ʤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Фʤ<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Pp
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fa base
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥϡ<EFBFBD>
|
||
.Fa compar
|
||
<EFBFBD><EFBFBD><EFBFBD>ؤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵؿ<EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD>äƾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD>δؿ<EFBFBD><EFBFBD>Ǥϡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӥ<EFBFBD><EFBFBD>륪<EFBFBD>֥<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><EFBFBD>ؤ<EFBFBD><EFBFBD><EFBFBD>2 <20>Ĥΰ<C4A4><CEB0><EFBFBD><EFBFBD><EFBFBD>ɬ<EFBFBD>פǤ<D7A4><C7A4><EFBFBD>
|
||
.Pp
|
||
<EFBFBD><EFBFBD><EFBFBD>Ӵؿ<EFBFBD><EFBFBD>ϡ<EFBFBD><EFBFBD>ǽ<EFBFBD><EFBFBD>ΰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>꾮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <20><><EFBFBD>꾮<EFBFBD><EABEAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30><EFBFBD>礭<EFBFBD><E7A4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <20><><EFBFBD><EFBFBD><EFBFBD>礭<EFBFBD><E7A4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>᤹ɬ<E1A4B9>פ<EFBFBD><D7A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD>
|
||
.Pp
|
||
.Fn qsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn heapsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǥ<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD>Ĥޤ<EFBFBD> 2 <20>ĤΥ<C4A4><CEA5><EFBFBD><EFBFBD>Ф<EFBFBD><D0A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>硢<EFBFBD><E7A1A2><EFBFBD><EFBFBD><EFBFBD>ȺѤ<C8BA><D1A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǥν<C7A4><CEBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˤʤ<CBA4><CAA4>ޤ<EFBFBD><DEA4><EFBFBD>
|
||
.Fn mergesort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD>ϰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǥ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Pp
|
||
.Fn qsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD>ϡ<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>ƥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥΰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǥ<EFBFBD><EFBFBD>롢C.A.R. Hoare <20><>
|
||
``<60><><EFBFBD><EFBFBD><EFBFBD>å<EFBFBD><C3A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'' <20><><EFBFBD>르<EFBFBD>ꥺ<EFBFBD><EAA5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4>ޤ<EFBFBD><DEA4><EFBFBD>
|
||
<EFBFBD>Ȥ<EFBFBD><EFBFBD><EFBFBD> D.E. Knuth <20>Υ<EFBFBD><CEA5>르<EFBFBD>ꥺ<EFBFBD><EAA5BA> Q <20>Ȥ<F2BBB2BE><C8A4>Ƥ<EFBFBD><C6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn qsort
|
||
<EFBFBD>ˤϡ<EFBFBD>ʿ<EFBFBD>Ѥ<EFBFBD>
|
||
O N lg N
|
||
<EFBFBD>λ<EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǥϡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѥ<EFBFBD><EFBFBD>ơ<EFBFBD>O N**2 <20>Ȥ<EFBFBD><C8A4><EFBFBD>
|
||
<EFBFBD>ǰ<EFBFBD><EFBFBD>ʥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Pp
|
||
.Fn heapsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD>ϡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥΰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǥ<EFBFBD><EFBFBD>롢J.W.J. William <20><>
|
||
``<60>ҡ<EFBFBD><D2A1>ץ<EFBFBD><D7A5><EFBFBD><EFBFBD><EFBFBD>'' <20><><EFBFBD>르<EFBFBD>ꥺ<EFBFBD><EAA5BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4>ޤ<EFBFBD><DEA4><EFBFBD>
|
||
<EFBFBD>Ȥ<EFBFBD><EFBFBD><EFBFBD> D.E. Knuth <20>Υ<EFBFBD><CEA5>르<EFBFBD>ꥺ<EFBFBD><EAA5BA> H <20>Ȥ<F2BBB2BE><C8A4>Ƥ<EFBFBD><C6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn heapsort
|
||
<EFBFBD>ˤϡ<EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD>Υ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
O N lg N
|
||
<EFBFBD>λ<EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۤȤ<EFBFBD><EFBFBD><EFBFBD>;ʬ<EFBFBD>˻<EFBFBD><EFBFBD>Ѥ<EFBFBD><EFBFBD>ʤ<EFBFBD><EFBFBD>Ȥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Τߤ<EFBFBD>
|
||
.Fn qsort
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͥ<EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn qsort
|
||
<EFBFBD>ϥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥޤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѥ<EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Pp
|
||
.Fn mergesort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD>Ǥϡ<EFBFBD>
|
||
.Fa nmemb *
|
||
.Fa size
|
||
<EFBFBD>Х<EFBFBD><EFBFBD>ȤΥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>꤬;ʬ<EFBFBD><EFBFBD>ɬ<EFBFBD>פȤʤ<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD>ڡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;͵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Τߤ˻<EFBFBD><EFBFBD>Ѥ<EFBFBD><EFBFBD>Ƥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn mergesort
|
||
<EFBFBD>ϡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¤<EFBFBD><EFBFBD>Ǥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ս<EFBFBD><EFBFBD>Τ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>褦<EFBFBD><EFBFBD>Ŭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD>ǰ<EFBFBD><EFBFBD>Υ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD>֤<EFBFBD> O N lg N <20>ǡ<EFBFBD><C7A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Υ<EFBFBD><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> O N <20>Ǥ<EFBFBD><C7A4><EFBFBD>
|
||
.Pp
|
||
<EFBFBD>̾<EFBFBD><EFBFBD>ϡ<EFBFBD>
|
||
.Fn heapsort
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn mergesort
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>®<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn mergesort
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn qsort
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>®<EFBFBD>Ǥ<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD>ѤǤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¤<EFBFBD><EFBFBD>Ǥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>̤ˤ<EFBFBD><EFBFBD>ꡢ<EFBFBD><EFBFBD><EFBFBD>ξ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Sh <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn qsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͤ<EFBFBD><EFBFBD>ᤷ<EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Pp
|
||
.Rv -std heapsort mergesort
|
||
.Sh <EFBFBD><EFBFBD><EFBFBD>顼
|
||
.Fn heapsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn mergesort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD>ϡ<EFBFBD><EFBFBD>ʲ<EFBFBD><EFBFBD>Τ褦<EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˥<EFBFBD><EFBFBD>顼<EFBFBD>Ȥʤ<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Bl -tag -width Er
|
||
.It Bq Er EINVAL
|
||
.Fa size
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <20>Ǥ<EFBFBD><C7A4>뤫<EFBFBD><EBA4AB>
|
||
.Fn mergesort
|
||
<EFBFBD><EFBFBD>
|
||
.Fa size
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Dq "sizeof void * / 2"
|
||
<EFBFBD><EFBFBD><EFBFBD>꾮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>硣
|
||
.It Bq Er ENOMEM
|
||
.Fn heapsort
|
||
<EFBFBD><EFBFBD>
|
||
.Fn mergesort
|
||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʤ<EFBFBD><EFBFBD>ä<EFBFBD><EFBFBD><EFBFBD><EFBFBD>硣
|
||
.El
|
||
.Sh <EFBFBD>ߴ<EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn qsort
|
||
<EFBFBD>Ǥϡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӥ롼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn qsort 3
|
||
<EFBFBD><EFBFBD><EFBFBD>ƤӽФ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȤϤǤ<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
<EFBFBD><EFBFBD><EFBFBD>ߤϸƤӽФ<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|
||
.Sh <EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Xr sort 1 ,
|
||
.Xr radixsort 3
|
||
.Rs
|
||
.%A Hoare, C.A.R.
|
||
.%D 1962
|
||
.%T "Quicksort"
|
||
.%J "The Computer Journal"
|
||
.%V 5:1
|
||
.%P pp. 10-15
|
||
.Re
|
||
.Rs
|
||
.%A Williams, J.W.J
|
||
.%D 1964
|
||
.%T "Heapsort"
|
||
.%J "Communications of the ACM"
|
||
.%V 7:1
|
||
.%P pp. 347-348
|
||
.Re
|
||
.Rs
|
||
.%A Knuth, D.E.
|
||
.%D 1968
|
||
.%B "The Art of Computer Programming"
|
||
.%V Vol. 3
|
||
.%T "Sorting and Searching"
|
||
.%P pp. 114-123, 145-149
|
||
.Re
|
||
.Rs
|
||
.%A Mcilroy, P.M.
|
||
.%T "Optimistic Sorting and Information Theoretic Complexity"
|
||
.%J "Fourth Annual ACM-SIAM Symposium on Discrete Algorithms"
|
||
.%V January 1992
|
||
.Re
|
||
.Rs
|
||
.%A Bentley, J.L.
|
||
.%T "Engineering a Sort Function"
|
||
.%J "bentley@research.att.com"
|
||
.%V January 1992
|
||
.Re
|
||
.Sh <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
.Fn qsort
|
||
<EFBFBD>ؿ<EFBFBD><EFBFBD>ϡ<EFBFBD>
|
||
.St -isoC
|
||
<EFBFBD><EFBFBD>Ŭ<EFBFBD>礷<EFBFBD>Ƥ<EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD>
|