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

网站开发网站建设百科网wordpress

网站开发网站建设,百科网wordpress,平顺网站建设,怎么利用代码做网站一#xff1a;题目 已知两个非降序链表序列S1与S2#xff0c;设计函数构造出S1与S2的交集新链表S3。 输入格式: 输入分两行#xff0c;分别在每行给出由若干个正整数构成的非降序序列#xff0c;用−1表示序列的结尾#xff08;−1不属于这个序列#xff09;。数字用空…一题目 已知两个非降序链表序列S1与S2设计函数构造出S1与S2的交集新链表S3。 输入格式: 输入分两行分别在每行给出由若干个正整数构成的非降序序列用−1表示序列的结尾−1不属于这个序列。数字用空格间隔。 输出格式: 在一行中输出两个输入序列的交集序列数字间用空格分开结尾不能有多余空格若新链表为空输出NULL。 输入样例: 1 2 5 -1 2 4 5 8 10 -1输出样例: 2 5二思路 1.首先是储存数据我用的是尾插法 2.考虑如何找出交集需要注意的是题目说的是非降序为即后一个一定比前一个值大那么我们在处理交集合的时候就可以用到了比较元素大小直接让指针指向后一个而不用担心前一个会被忽略因为两个序列均为非降序 三上码 #includebits/stdc.h using namespace std;typedef struct Node* Link; typedef struct Node{int data;Link next; }nnode;//输入链表(尾插法) Link createLink(){Link head (Link)malloc(sizeof(struct Node));Link rear;rear head;while(1){int num;cin num;if(num -1)break;Link p (Link)malloc(sizeof(struct Node));p-data num;rear-next p;rear p; }rear-next NULL;return head; }Link newLink(Link L1,Link L2){Link l1 L1-next;Link l2 L2-next;//新建一个链表 存的元素为交集Link head (Link)malloc(sizeof(struct Node));Link rear;rear head; while(l1 l2){//题目给出的非降序即后一个一定比前一个值大 if(l1-data l2-data){l2 l2-next;}else if(l1-data l2-data){l1 l1-next; }else if(l1-data l2-data){Link p (Link)malloc(sizeof(struct Node));p-data l1-data;rear-next p;rear p; l1 l1-next;l2 l2-next; //return 0;} } rear-next NULL;return head;} void printLink(Link L){Link l L-next;//头结点并未赋值所以要用头结点的下一个结点if(l NULL){cout NULL;}int flag 0;while(l){if(flag 0)cout l-data;elsecout l-data;flag 1; l l-next;} }int main(){Link L1 createLink();Link L2 createLink();Link L3 newLink(L1,L2);printLink(L3);} 四其他做法的失败码 1用了vector容器最后一个点超时 #includebits/stdc.h using namespace std;int main(){vectorintv1,v2,v3;setints[2];setint::iterator st;while(1){int temp1; cin temp1;if(temp1 -1)break;v1.push_back(temp1);}while(1){int temp2; cin temp2;if(temp2 -1)break;v2.push_back(temp2);}//判断相同的元素int num1 v1.size() v2.size() ? v1.size() : v2.size();//求出较大的值int num2 v1.size() v2.size() ? v1.size() : v2.size();//求出较小的值for(int i 0; i num2; i){for( int j 0; j num1; j){if(v1[i] v2[j]){v3.push_back(v1[i]);break;}}} if(v3.size() ! 0){for(int i 0; i v3.size(); i){if(i ! v3.size() - 1){cout v3[i] ; }else{cout v3[i];}}}else{cout NULL;}} 2用了set容器超时解决了但最后一个测试点 答案错误 吐了 #includebits/stdc.h using namespace std;int main(){vectorintv1,v2,v3;setints[2];setint::iterator st;while(1){int temp1; cin temp1;if(temp1 -1)break;s[0].insert(temp1);}while(1){int temp2; cin temp2;if(temp2 -1)break;s[1].insert(temp2);}//判断相同的元素for(st s[0].begin(); st ! s[0].end(); st){if(s[1].find(*st) ! s[1].end()){//如果是s[1]容器中没有*t这个元素的话那么就 v3.push_back(*st); //返回 s[1].end(); 但现在是 ! s[1].end();// 那么的话就是存在*t; }} if(v3.size() ! 0){for(int i 0; i v3.size(); i){if(i ! v3.size() - 1){cout v3[i] ; }else{cout v3[i];}}}else{cout NULL;}} 3:用了map容器超时解决了但最后一个测试点过不去答案错误狗比PTA气死我了 #includebits/stdc.h using namespace std;int main(){vectorintv3;mapint,intm;mapint,int::iterator t;while(1){int temp1; cin temp1;if(temp1 -1)break;m[temp1] 1;}while(1){int temp2; cin temp2;if(temp2 -1)break;m[temp2] 1;}for(t m.begin(); t ! m.end(); t){if(t-second 2){v3.push_back(t-first);}}if(v3.size() ! 0){for(int i 0; i v3.size(); i){if(i ! v3.size() - 1){cout v3[i] ; }else{cout v3[i];}}}else{cout NULL;}} 五总结 加油BOY! 毕竟这道题人家让用的就是链表所以还是老老实实用来链表吧
http://www.fuzeviewer.com/news/25915/

相关文章:

  • 微网站建设 上海鲜花网站建设规划
  • 德兴市网站建设服务公司游戏网站建设与策划方案
  • 网站建设公司创业计划书学校网站建
  • 自己有个服务器 怎样做网站稿定设计app免费版下载
  • 室内设计网站免费模板世界500强排名
  • 网站正在建设中页面 英文翻译泰国如何做网站推广
  • 吉首做网站建网站的公司有哪些
  • 做网站哪个公司网站备案导致网站被k
  • 什么是网站主办者做网站编辑需要会什么
  • 寮步仿做网站百度排名软件
  • 网站开发公司方案建站合同
  • 什么网站可以做认证网站竞价 英文
  • 个人门户网站模板服务公司理念
  • 天津公司网站的建设湖北专业的网瘾戒除学校哪里好
  • 北京市网站维护公司曹鹏wordpress教程 下载
  • windows 2003建设网站英文外贸网站建设
  • 天津河东区网站建设河南省建设工程造价协会网站
  • 兴义网站开发金华市住房建设局网站
  • 网站开发模板免费下载东莞网站优化的具体方案
  • 网站图片设置方法大淘客联盟做网站
  • 手机网站费用网站和主机有什么不同
  • ps做网站ui网站制作中帐号登录怎么做
  • 深圳市住房和建设局网站首页怎样注册网站做销售
  • 代理网站地址百度热搜关键词排行榜
  • 郑州做网站优化最好的公司福州网站制作培训
  • 站内搜索工具如何打死网站
  • 沈阳网站建设syxhrkj2018年主流网站开发语言
  • 上海网站建设选缘魁深圳品牌设计工作室
  • 门户网站建设和推广济南金融行业网站开发
  • 学网站开发有什么好处个人买域名有什么用