typedef
int position;
typedef
struct lnode *list;
struct lnode ;
/* 初始化 */
list makeempty()
/* 查詢 */
#define error -1
position find( list l, elementtype x )
/* 插入 */
bool insert( list l, elementtype x, position p )
if ( p<0 || p>l->last+1 )
for( i=l->last; i>=p; i-- )
l->data[i+1] = l->data[i]; /* 將位置p及以後的元素順序向後移動 */
l->data[p] = x; /* 新元素插入 */
l->last++; /* last仍指向最後元素 */
return
true;
} /* 刪除 */
bool delete( list l, position p )
for( i=p+1; i<=l->last; i++ )
l->data[i-1] = l->data[i]; /* 將位置p+1及以後的元素順序向前移動 */
l->last--; /* last仍指向最後元素 */
return
true;
}
以上為順序儲存結構的初始化查詢插入刪除。
線性表基本操作
typedef struct lnode *ptrtolnode;
struct lnode ;
typedef ptrtolnode position;
typedef ptrtolnode list;
/* 查詢 */
#define error null
position find( list l, elementtype x )
/* 帶頭結點的插入 */
bool insert( list l, elementtype x, position p )
else
} /* 帶頭結點的刪除 */
bool delete( list l, position p )
else
}
typedef
int position;
struct snode ;
typedef
struct snode *stack;
stack createstack( int maxsize )
bool isfull( stack s )
bool push( stack s, elementtype x )
else
} bool isempty( stack s )
elementtype pop( stack s )
else
return ( s->data[(s->top)--] );
}
typedef struct snode *ptrtosnode;
struct snode ;
typedef ptrtosnode stack;
stack createstack( )
bool isempty ( stack s )
bool push( stack s, elementtype x )
elementtype pop( stack s )
else
}
typedef
int position;
struct qnode ;
typedef
struct qnode *queue;
queue createqueue( int maxsize )
bool isfull( queue q )
bool addq( queue q, elementtype x )
else
} bool isempty( queue q )
elementtype deleteq( queue q )
else
}
typedef struct node *ptrtonode;
struct node ;
typedef ptrtonode position;
struct qnode ;
typedef struct qnode *
queue;
bool isempty( queue q )
elementtype deleteq( queue q )
else
}
資料結構 線性結構
線性表基本操作有 1 list makeempty 初始化乙個新的線性表 2 elementtype findkth list l,int i 根據指定的位序i,返回l中相應元素ai i是下標 3 position find list l,elementtype x 已知x,返回線性表l中與x相同的...
資料結構 線性結構與非線性結構
線性結構是最常用的資料結構,其特點是資料元素之間存在著一對一的線性關係。線性結構有著兩種不同的儲存結構,順序儲存結構 陣列 和鏈式儲存結構 鍊錶。順序儲存的線性表稱為順序表,順序表中的儲存元素是連續的。鏈式儲存的線性表稱為鍊錶,鍊錶中的儲存元素不一定是連續的,並且鍊錶元素節點中存放著資料元素以及相鄰...
資料結構 線性結構和非線性結構
資料結構包括 線性結構和非線性結構 線性結構 線性結構作為最常用的資料結構,其特點是資料元素之間存在一對一的線性關係 線性結構有兩種不同的儲存結構,即順序儲存結構和鏈式儲存結構.順序儲存的線性表稱為順序表,順序表中的儲存元素是連續的 鏈式儲存的線性表稱為鍊錶,鍊錶中儲存元素不一定是連續的,元素節點中...