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

建网站需要服务器吗做网站的软件工程师

建网站需要服务器吗,做网站的软件工程师,商标设计网站免费,门户网站制作定做链接#xff1a; 143. 重排链表 题意#xff1a; 将链表L0 → L1 → … → Ln - 1 → Ln变成L0 → Ln → L1 → Ln - 1 → L2 → Ln - 2 → … 解#xff1a; 线性表法还是好写的 这边搞一下翻转法#xff0c;快慢指针求翻转点#xff08;翻转后面一半然后双指针合并…链接 143. 重排链表 题意 将链表L0 → L1 → … → Ln - 1 → Ln变成L0 → Ln → L1 → Ln - 1 → L2 → Ln - 2 → … 解 线性表法还是好写的 这边搞一下翻转法快慢指针求翻转点翻转后面一半然后双指针合并成一个 还是喜欢递归翻转或者新头结点翻转QWQ不过还是写了一下循环直接翻转 找到翻转点不包含在翻转后的链表里之后先将记录TA的下一个然后TA-nextnullptr将指针TA转到记录上然后再记录TA的下一个再将现在TA的next设成nullptr断开两部分链表 两个需要特判的地方翻转点后面是nullptr则没有需要翻转的翻转点后面的后面没有点则不需要进入循环即不存在下一个-代码注释 然后每次记录处理节点的下一个N和下下一个NN将下一个的next指向自身翻转(下一个代表节点next代表指针) 这时候由于TA下一个的next指向TA所以当TA移动到下一个以后不能通过再访问next获取正确的下一个所以要用nextnext来更新next然后nextnext与后面还保持正确的顺序用nextnext的next来更新nextnext 比较麻烦感觉不如递归 总之就是先记录原顺序再进行翻转操作就是很注意越界条件 实际代码 #includebits/stdc.h using namespace std; struct ListNode {int val;ListNode *next;ListNode() : val(0), next(nullptr) {}ListNode(int x) : val(x), next(nullptr) {}ListNode(int x, ListNode *next) : val(x), next(next) {} }; void add(ListNode* temp,ListNode* addor) {if(tempnullptr) tempaddor;else{temp-nextaddor;temptemp-next;} } /* void reorderList(ListNode* head)//线性表 {ListNode* temphead;vectorListNode*lists;while(temp!nullptr){lists.push_back(temp);temptemp-next;}int lglists.size();int l0,rlg-1;tempnullptr;for(;lr;l,r--){add(temp,lists[l]);if(l!r) add(temp,lists[r]);}temp-nextnullptr; }*/ void Build(ListNode* Reverse,ListNode* temp) {ListNode* nexttemp-next,*nextnext;temp-nextnullptr;//前面断开后面tempnext;//截断前面不需要翻转的 if(temp-next!nullptr)//存在下一个 {nexttemp-next;//记录下一个 nextnextnext-next;//记录正确的下下个可能是空}else nextnullptr;temp-nextnullptr;//翻转后作为尾结点要指向空 //后面断开前面 完成断开 while(next!nullptr){next-nexttemp;//下一个指向自己 tempnext;//自己变成下一个 nextnextnext;//现在的下一个变成之前记录的正确目标 if(next!nullptr) nextnextnext-next;//记录正确的下下个else break;}Reversetemp; } void reorderList(ListNode* head)//翻转 {ListNode *slowhead,*fasthead;while(slow!nullptrfast!nullptr){fastfast-next;if(fast!nullptr) fastfast-next;else break;slowslow-next;}coutslow-valendl;//翻转点 ListNode *Reversenullptr;if(slow-next!nullptr) Build(Reverse,slow);//构建 slowhead,fastReverse;while(slow!nullptrfast!nullptr){ListNode *snextslow-next,*fnextfast-next;slow-nextfast;fast-nextsnext;slowsnext;fastfnext;} } int main() {ListNode* headnullptr;int n;cinn;ListNode* nownullptr;for(int i1;in;i){//int temp;cintemp;if(headnullptr){headnew ListNode(i);nowhead;}else{now-nextnew ListNode(i);nownow-next;}}reorderList(head); }限制 链表的长度范围为 [1, 5 * 104]1 node.val 1000
http://www.hkea.cn/news/14527737/

相关文章:

  • 网站在政务新媒体建设方案crm系统官网
  • 弹窗广告最多的网站网站的头尾和导航的公用文件
  • 如何在网站中加入百度地图深圳市建设工程交易服务中心宝安分中心
  • 金花站长工具平台商业模式有哪些
  • wordpress站点名没有更改做折扣的网站有哪些
  • 宁波网站推广网站优化郑州网站建设制作费用
  • 国家网站备案常德市网站建设
  • wap网站开发价格wordpress 文章rss
  • 分类信息网站营销杭州精高端网站建设
  • 南通网站排名方法交互做的比较好的网站
  • 网站开发和美工的区别个人网站制作申请
  • 卯兔科技网站建设购买一个网站需要多少钱
  • 青浦网站开发做饲料的专业网站
  • 域名不转出可以做网站吗霸州市网站建设
  • 昆明企业网站建设一条龙cnnic可信网站必须做吗
  • 黄山网站建设推荐电子网站建设推广方案
  • 女孩做网站运营好吗六图网
  • 官方网站建设 安全还踏实磐石网络php网站源码怎么在本地电脑调式
  • 泰安千橙网站建设这几年做哪些网站能致富
  • 东莞高端网站建设哪个好软文怎么写比较吸引人
  • 青州做网站的电话2014年沈阳建设银行网站
  • 做ps兼职的网站有哪些百度云网盘搜索引擎入口
  • 拱墅区哪里有网站建设青岛网站优化快速排名
  • 网站建设需要什么技术广东微信网站制作费用
  • wordpress类似的网站c 能用来做网站
  • 西安企业网站建设多少钱wordpress 采集文章 图片不显示
  • 学生管理系统 静态网站源码wordpress双按钮设置
  • 公司名称 网站域名 关联青岛 建网站
  • 什么网站收录快九一赣州人才网招聘
  • 德赞网站建设网站制作实体店面做网站推广要多少钱