BinaryPlace - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.
Our website is currently undergoing maintenance, which may result in occasional errors while browsing. We apologize for any inconvenience this may cause and are working swiftly to restore full functionality. Thank you for your patience.

Online Help

All Products    Maple    MapleSim


ListTools

  

BinaryPlace

  

perform a binary placement in a list

 

Calling Sequence

Parameters

Description

Examples

Compatibility

Calling Sequence

BinaryPlace(L, x, f, opt1, opt2, ...)

Parameters

L

-

list, Vector, or one-dimensional Array

x

-

anything

f

-

(optional) procedure, operator, or algebraic expression

opt1, opt2, ...

-

(optional) extra arguments to f

Description

• 

The BinaryPlace(L, x) function performs a binary placement of x in L, where L is assumed to be sorted.  It returns the greatest index n such that L[n] precedes x. If x precedes all elements in a list L, then the value 0 is returned.

  

In this form of the calling sequence, x must be of type numeric or string and L should contain values of the same type in ascending order.

• 

BinaryPlace also accepts a Vector or one-dimensional Array as its first argument. If x precedes all elements in an Array, then the value that is returned is the lowerbound of the Array minus one. Since Vectors, like lists, always have a lowerbound of 1, the value returned for a Vector in this case is 0.

• 

If L is a list, then the returned value n is such that op1..n,L,x,opn+1..−1,L is still a sorted list. If L is a Vector or Array, then the returned value n is such that opconvertL..n,list,x,opconvertLn+1..,list is sorted.

• 

If three or more arguments are specified in the calling sequence, then fx,y,opt1,opt2,... must return true if x precedes y.

Examples

withListTools:

L1,5,7,8,10:

nBinaryPlaceL,6

n2

(1)

op1..n,L,6,opn+1..1,L

1,5,6,7,8,10

(2)

BinaryPlacemac,made,magpie,mail,magic

2

(3)

BinaryPlace0,sin12,1,exp110,verify,less_than

2

(4)

BinaryPlace4,1,2,4,1,2,3,4,2,4,`subset`

1

(5)

An example with a reverse-sorted Array. Note that the eight elements of this Array are indexed with the numbers −2 up to 5.

AArray2..5,173,157,101,21,17,3,33,62

By supplying `>` for f, we get BinaryPlace to understand the reverse ordering.

BinaryPlaceA,0,`>`

2

(6)

We find that the elements −2 up to 2 are the positive ones, 3 up to 5 are negative.

convertA..2,list

173,157,101,21,17

(7)

convertA3..,list

−3,−33,−62

(8)

Compatibility

• 

The ListTools[BinaryPlace] command was updated in Maple 18.

• 

The L parameter was updated in Maple 18.

See Also

list

ListTools

ListTools[BinarySearch]

sort

type/list

type/numeric

type/string