⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chain_common.h

📁 试写一个算法
💻 H
字号:
#ifndef CHAIN_COMMON_H#define CHAIN_COMMON_H#include<stdio.h>#include<malloc.h>#include "group_common.h"/**********************************************************************************************************************************//**********************************************************************************************************************************//*有关的错误类型*/#define ERR_NODATA 0#define ERR_OUTOFLENGTH -1#define ERR_OUTOFMEMORY -1/**********************************************************************************************************************************//**********************************************************************************************************************************/struct chain_node{	DATA_TYPE node_data;	struct chain_node *chain_next;};struct chain_init{	LONGINT chain_length;	struct chain_node *chain_head;};struct chain_cur{	struct chain_init *chain_name;	struct chain_node *chain_point;	LONGINT chain_local;};struct chain_init* last_operation;/*指向最后操作的链表*//*功能:chain_create:初始化一个链表输入:data_cable:缓冲区长度 默认为500输出:已经初始化的链表*/struct chain_init chain_Create();/*功能:chain_Curcreate:建立一个游标输入:chain_name:指向的链表输出:游标*/struct chain_cur chain_Curcreate(struct chain_init* chain_name);/*功能:chain_Length:返回数据量输入:chain_name:链表名称输出数据量*/LONGINT chain_Length(struct chain_cur* cur_name);/*功能:chain_Eof:判断是否到尾输入:chain_name:链表名称输出是否到尾*/SHORTINT chain_Eof(struct chain_cur* cur_name);/*功能:chain_Append:在链表尾部增加数据,操作完毕后指针会移至尾部输入:chain_name:待操作链表名indata:插入的数据输出:插入后链表的长度*/LONGINT chain_Append(DATA_TYPE indata,struct chain_cur* cur_name);/*功能:chain_Insert:在游标所在位置插入数据输入:chain_name:链表名称indata:插入数据输出:插入后链表的长度*/LONGINT chain_Insert(DATA_TYPE indata,struct chain_cur* cur_name);/*功能:chain_Remove:删除游标当前的数据注:此函数效率极低,慎用输入:chain_name:链表名称输出:删除后链表的长度*/LONGINT chain_Remove(struct chain_cur* cur_name);/*功能:chain_First:把链表游标移至头部输入:chain_name:链表名称输出:*/void chain_First(struct chain_cur* cur_name);/*功能:chain_Next():把链表游标后移一位输入:chain_name:链表名称输出:*/void chain_Next(struct chain_cur* cur_name);/*功能chain_Prev():把链表游标前移一位注:此函数效率极低,慎用输入:chain_name:链表名称输出:*/void chain_Prev(struct chain_cur* cur_name);/*功能chain_Last():把链表游标移至末尾注:此函数效率极低,慎用输入:chain_name:链表名称输出:*/void chain_Last(struct chain_cur* cur_name);/*功能chain_Goto():把链表游标移动到指定位置输入:chain_location:位置chain_name:链表名称输出:*/void chain_Goto(LONGINT chain_location,struct chain_cur* cur_name);/*功能chain_Get():取得游标当前的数据输入:arrap_name:链表名称输出:取得的数据*/DATA_TYPE chain_Get(struct chain_cur* cur_name);/*功能chain_Get():修改游标当前的数据输入:indata:输入数据arrap_name:链表名称输出:*/void chain_Set(DATA_TYPE indata,struct chain_cur* cur_name);/*功能chain_Drop():抛弃链表输入:arrap_name:链表名称输出:*/void chain_Drop(struct chain_cur* cur_name);/**********************************************************************************************************************************//*各函数的快速调用,省略链表参数,操作最近一次操作过的链表,命名规则为在chain_后加q*//**********************************************************************************************************************************//*LONGINT chain_qSize();LONGINT chain_qLength();SHORTINT chain_qEof(struct chain_cur* cur_name);*/#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -