当前位置: 首页 > news >正文

站长之家论坛asp. net 做网站

站长之家论坛,asp. net 做网站,福州做网站互联网公司有哪些,成都建设材料二维码网站#xff08;一#xff09;实验类型#xff1a;设计性 #xff08;二#xff09;实验目的#xff1a; 1. 掌握线性表的链式存贮结构及基本操作#xff0c;深入了解链表的基本特性#xff0c;以便在实际问题背景下灵活运用它们。 2. 巩固该存贮结构的构造方法#xff0…一实验类型设计性 二实验目的 1. 掌握线性表的链式存贮结构及基本操作深入了解链表的基本特性以便在实际问题背景下灵活运用它们。 2. 巩固该存贮结构的构造方法深入理解和灵活掌握链表的插入、删除等操作。 三实验内容 1. 建立线性表的链式存储结构。 2. 完成链表操作建立初始化增加插入删除。   #include iostream// 链表节点结构 struct ListNode {int val; // 节点存储的值ListNode* next; // 指向下一个节点的指针 };// 初始化链表 void initList(ListNode* head) {head nullptr; }// 在链表尾部添加节点 void appendNode(ListNode* head, int value) {ListNode* newNode new ListNode; // 创建新节点//创建新的空间newNode-val value;newNode-next nullptr;if (head nullptr) {head newNode; // 如果链表为空直接将新节点作为头节点}else {ListNode* tmp head;while (tmp-next ! nullptr) {tmp tmp-next; // 遍历链表找到尾部节点}tmp-next newNode; // 将新节点连接到尾部节点的next指针上} }// 在指定位置插入节点 void insertNode(ListNode* head, int value, int pos) {if (pos 0) {ListNode* newNode new ListNode; // 创建新节点newNode-val value;newNode-next head; // 将新节点连接到头节点之前head newNode; // 将新节点作为头节点}else {ListNode* tmp head;int count 1;while (tmp ! nullptr count pos)//tmp ! nullptr是因为我们插入是必须要左右两边都有数据才能叫插入//不然就只能添加不可以直接填在一个很远的空间里不然就浪费空间了{tmp tmp-next; // 遍历链表找到指定位置的前一个节点count;}if (tmp ! nullptr)//必须是在tmp不为空时才能算成插入。//再次判断是因为我们只选取count遍历到pos的位置的这种情况而不是空的链表的情况。{ListNode* newNode new ListNode; // 创建新节点newNode-val value;newNode-next tmp-next; // 将新节点连接到当前节点的next指针上//这是链接步骤的代码把数据插入//至于next是因为我们是要插入在数据的中间也就是tmp的next的位置tmp-next newNode;//这个是指向新的插入数据的步骤方便下一次数据的插入。}else {std::cout 插入位置超过链表长度 std::endl;}} }// 删除指定位置的节点 void deleteNode(ListNode* head, int pos) {if (head nullptr) {std::cout 链表为空无法删除节点 std::endl;return;}if (pos 0) {ListNode* tmp head;head head-next; // 删除头节点delete tmp;}else {ListNode* tmp head;int count 1;while (tmp-next ! nullptr count pos) {tmp tmp-next; // 遍历链表找到指定位置的前一个节点count;}if (tmp-next ! nullptr) {ListNode* delNode tmp-next;//先指向当前数据tmp-next delNode-next;//直接将当前数据跳到下一个前面已经链接好的数据不会丢失因为都在同一个位置//我们不过是把当前数据覆盖成下一个罢了delete delNode;}else {std::cout 删除位置超过链表长度 std::endl;}} }// 打印链表 void printList(ListNode* head) {ListNode* tmp head;while (tmp ! nullptr) {std::cout tmp-val ;tmp tmp-next;}std::cout std::endl; }int main() {ListNode* myList;initList(myList);// 在链表尾部增加节点appendNode(myList, 1);appendNode(myList, 2);appendNode(myList, 3);printList(myList); // 输出1 2 3// 在指定位置插入节点insertNode(myList, 4, 2);printList(myList); // 输出1 4 2 3// 删除节点deleteNode(myList, 2);printList(myList); // 输出1 2 3return 0; }
http://www.w-s-a.com/news/231745/

相关文章:

  • 建设银行对账网站网络营销广告案例
  • 做网站开票是多少个点的票wordpress扫码提交数据库
  • 织梦网站改版需要怎么做企业网站备案管理系统
  • 大规模网站开发语言宁夏建设职业技术学院网站
  • 寻花问柳专注做一家男人爱的网站北京展台设计制作
  • 中卫网站设计做自己的卡盟网站
  • 广州网站推广自助做网站人家直接百度能搜到的
  • 电子商务网站建设目标及利益分析安徽建设厅网站施
  • 制作网站策划书网站建设公司的性质
  • 哪个网站可以做免费宣传简单的网页设计网站
  • 福州专业网站制作公司金湖建设局网站
  • 好的移动端网站模板下载兰州线上广告推广
  • 宁波高端建站深圳品牌营销策划机构
  • 权威网站优化价格建设厅科技中心网站首页
  • 保定模板建站软件腾讯云做淘客网站
  • 单位建设一个网站的费用正规刷手机单做任务网站
  • 北京定制网站价格开网店怎么卖到外国
  • 做网站 后端是谁来做的工程建设指挥部网站
  • wordpress建站 云打印昆明 网站设计
  • 太原网站建设设计网站建设策划书(建设前的市场分析)
  • 哪里有制作网站电商新手入门知识
  • 制作网站的后台文昌网站建设 myvodo
  • 网站 购买移动网站制作
  • 南京网站网站建设学校英山做网站多少钱
  • 珠海网站建设网如何注册公司公众号
  • 手机网站页面制作网站怎么做快照
  • asp网站怎么仿站推广软件下载平台
  • 电子商务网站建设期末试题08答案互联网怎么做
  • 规范门户网站的建设和管理办法微信网站开发公司电话
  • 免费行情网站凡客的官网