found note that one side of the rectangle lies on the -axisi the lower bound for is this guarantees that enumeration requires at most (log(nsoperationswhere is the cardinality of the search space in and is the number of nodes enumerated procedure enumerate (pptrx xlxrinteger)var xminteger(adens _prioritysearchtrees *begin if nil then if ( < ( < ( then report( xp yendxm :(xl xrdiv if xm then enumerate( leftx xlxmendif xm then enumerate( rightx xmxrend end end enumerate exercises let us introduce the notion of recursive typeto be declared as rectype and denoting the set of values defined by the type enlarged by the single value none the definition of the type personfor examplecould then be simplified to rectype person record namenamefathermotherperson end which is the storage pattern of the recursive structure corresponding to fig presumablyan implementation of such feature would be based on dynamic storage allocation schemeand the fields named father and mother in the above example would contain pointers generated automatically but hidden from the programmer what are the difficulties encountered in the realization of such feature define the data structure described in the last paragraph of section in terms of records and pointers is it also possible to represent this family constellation in terms of recursive types as proposed in the preceding exercise assume that first-in-first-out (fifoqueue with elements of type is implemented as linked list define module with suitable data structureprocedures to insert and extract an element from qand function to test whether or not the queue is empty the procedures should contain their own mechanism for an economical reuse of storage assume that the records of linked list contain key field of type integer write program to sort the list in order of increasing value of the keys then construct procedure to invert the list circular lists (see fig are usually set up with so-called list header what is the reason for introducing such headerwrite procedures for the insertiondeletionand search of an element identified by given key do this once assuming the existence of headeronce without header