版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
算法与数据结构体系课在链表中删除值为val的所有 如1->2->6->3->4->5->6->NULL,要求删除值为6 返回1->2->3->4->5-Sum(arr[0…n-1])=arr[0]+Sum(arr[1…n-1] 更⼩的同⼀问题Sum(arr[1…n-1])=arr[1]+Sum(arr[2…n-1] 更⼩的同⼀问题Sum(arr[n-1…n-1])=arr[n-1]+Sum([]
最基本的问题//arr[l…nstaticintsum(int[]if(l==returnreturnarr[l]+sum(arr,l+1);}
010123400eeeeee
func 2 }
func 2 }
func1 }publicstaticintsum(int[]arr,intif(l==returnreturnarr[l]+sum(arr,l+}publicstaticintsum(int[]arr,intif(l==returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}arr=[6,调⽤sum(arrintsum(int[]arr,intif(l==n)return0;intx=sum(arr,l+intres=arr[l]+return}arr=[6,调⽤sum(arrintsum(int[]arr,intif(l==n)return
x=
=
l+
return}arr=[6,调⽤sum(arr, 调⽤sum(arr,intsum(int[]arr,intif(l==n)return0;intx=sum(arr,l+1);intres=arr[l]+return}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}arr=[6,调⽤sum(arr, 调⽤sum(arr,intsum(int[]arr,intif(l==n)return0;intx=sum(arr,l+1);intres=arr[l]+return}
sum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}arr=[6,调⽤sum(arr
调⽤sum(arr
调⽤sum(arrintsum(int[]arr,intif(l==n)return0;intx=sum(arr,l+1);intres=arr[l]+return}
sum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}
sum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}arr=[6,调⽤sum(arr, 调⽤sum(arr,
调⽤sum(arrintsum(int[]arr,intif(l==n)return0;intx=sum(arr,l+1);intres=arr[l]+return}
sum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}x=arr=[6,调⽤sum(arr, 调⽤sum(arr,
调⽤sum(arrintsum(int[]arr,intif(l==n)return0;intx=sum(arr,l+1);intres=arr[l]+return}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;return}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}x=res=arr=[6,调⽤sum(arr, 调⽤sum(arr,
调⽤sum(arrintsum(int[]arr,intif(l==n)return0;intx=sum(arr,l+1);intres=arr[l]+return}
intsum(int[]arr,intif(l==n)return}intx=sum(arr,l+1);intres=arr[l]+x;returnres;}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}x=res=arr=[6,调⽤sum(arr, 调⽤sum(arr,
调⽤sum(arrintsum(int[]arr,intif(l==n)return0;intx=sum(arr,l+1);intres=arr[l]+return}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}x=res=arr=[6,调⽤sum(arr, 调⽤sum(arr,
调⽤sum(arrintsum(int[]arr,intif(l==n)return0;intx=sum(arr,l+1);intres=arr[l]+return}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}x=
x=res=arr=[6,调⽤sum(arr, 调⽤sum(arr,
调⽤sum(arrintsum(int[]arr,intif(l==n)returnintx=sum(arr,l+intres=arr[l]+x;return}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}x=res=
x=res=arr=[6,调⽤sum(arr, 调⽤sum(arr,
调⽤sum(arrintsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}x=res=
x=res=arr=[6,调⽤sum(arr, 调⽤sum(arr,
调⽤sum(arrintsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}
intsum(int[]arr,intif(l==n)returnintx=sum(arr,l+1);intres=arr[l]+x;returnres;}x=res=
x=res=publicListNoderemoveElements(ListNodehead,intval)if(head==returnhead.next=removeElements(head.next,returnhead.val==val?head.next:}788模拟调⽤, 6->7->8->null删除788678678
1 2 1 2 1 2 11212121678 678
publicListNoderemoveElements(ListNodehead,intval)if(head==returnhead.next=removeElements(head.next,returnhead.val==val?head.next:}788模拟调⽤, 6->7->8->null删除788678678
1 2 1 2 1 23 112121231678 678
88publicListNoderemoveElements(ListNodehead,intval)if(head==returnhead.next=removeElements(head.next,returnhead.val==val?head.next:}788模拟调⽤, 6->7->8->null删除788678678
1 2 1 2 3 1 23 1121231231678 678
888 888publicListNoderemoveElements(ListNodehead,intval)if(head==returnhead.next=removeElements(head.next,returnhead.val==val?head.next:}788模拟调⽤, 6->7->8->null删除788678678
1 2 3 1 2 3 1 23 1123123123168886888
7886878868
publicListNoderemoveElements(ListNodehead,intval)if(head==returnhead.next=removeElements(head.next,returnhead.val==val?head.next:}788模拟调⽤, 6->7->8->null删除788678678
1 2 3 1 2 3 1 23 1123123123168886888
68788686878868
func 2 }
func 2 }
func1 }递归调⽤是有代价的:函数调⽤递归调⽤是有代价的:函数调⽤………222…3…3…3…}}}建 链表添加元素递归实现的⼀个常⻅问publicListNoderemoveElements(ListNodehead,intval)if(head==null)returnhead.next=removeElements(head.next,returnhead.val==val?head.next:}publicListNoderemoveElements(ListNodehead,intval)if(head==null)returnhead.next=removeElements(head.next,returnhead.val==val?head.next:}0publicvoidadd(intindex,Ee){head=add(head,index,e);size++;}//在以node为头结点的链表的index位置插⼊元素e,递归privateNodeadd(Nodenode,intindex,Eif(index==returnnewNode(e,node.next=add(node.next,index-1,return}
publicvoidadd(intindex,Ee){add(head,index,e);size}//在以node为头结点的链表的index位置插⼊元素e,递归privatevoidadd(Nodenode,intindex,Eif(index==node=newNode(e,node);}add(node.next,index-1,}
publicvoidadd(intindex,Ee){add(head,index,e);size}//在以node为头结点的链表的index位置插⼊元素e,递归privatevoidadd(Nodenode,intindex,Eif(index==node=newNode(e,node);}add(node.next,index-1,}
publicvoidadd(intindex,Ee){add(head,index,e);size}//在以node为头结点的链表的index位置插⼊元素e,递归privatevoidadd(Nodenode,intindex,Eif(index==node=newNode(e,node);}add(node.next,index-1,}
publicvoidadd(intindex,Ee){add(head,index,e);size}//在以node为头结点的链表的index位置插⼊元素e,递归privatevoidadd(Nodenode,intindex,Eif(index==node=newNode(e,node);}add(node.next,index-1,}
publicvoidadd(intindex,Ee){add(head,index,e);size}//在以node为头结点的链表的index位置插⼊元素e,递归privatevoidadd(Nodenode,intindex,Eif(index==node=newNode(e,node);}add(node.next,index-1,}
publicvoidadd(intindex,Ee){add(head,index,e);size}//在以node为头结点的链表的index位置插⼊元素e,递归privatevoidadd(Nodenode,intindex,Eif(index==node=newNode(e,node);}add(node.next,index-1,}
publicvoidadd(intindex,Ee){add(head,index,e);size}//在以node为头结点的链表的index位置插⼊元素e,递归privatevoidadd(Nodenode,intindex,Eif(index==node=newNode(e,node);}add(node.next,index-1,}
publicvoidadd(intindex,Ee){add(head,index,e);size}//在以node为头结点的链表的index位置插⼊元素e,递归privatevoidadd(Nodenode,intindex,Eif(index==node=newNode(e,node);}add(node.next,index-1,}
publicvoidadd(intindex,Ee){head=add(head,index,e);size++;}
//在以node为头结点的链表的index位置插⼊元素e,递归privateNodeadd(Nodenode,intindex,Eif(index==returnnewNode(e,node.next=add(node.next,index-1,return}
publicvoidadd(intindex,Ee){head=add(head,index,e);size++;}
//在以node为头结点的链表的index位置插⼊元素e,递归privateNodeadd(Nodenode,intindex,Eif(index==returnnewNode(e,node.next=add(node.next,index-1,return}
publicvoidadd(intindex,Ee){head=add(head,index,e);size++;}
//在以node为头结点的链表的index位置插⼊元素e,递归privateNodeadd(Nodenode,intindex,Eif(index==returnnewNode(e,node.next=add(node.next,index-1,return}
publicvoidadd(intindex,Ee){head=add(head,index,e);size++;}
//在以node为头结点的链表的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年琼中教师招聘25人备考题库及答案详解(夺冠系列)
- 2026海南琼海市妇女联合会公益性岗位招聘1人备考题库含答案详解(培优)
- 2026浙江温州市洞头人才发展有限公司招聘1人备考题库(教务辅助)及一套参考答案详解
- 2026年铜川市招聘国家公费师范毕业生及“优师计划”毕业生备考题库(36人)附答案详解(典型题)
- 2026江西省江铜铜箔科技股份有限公司第二批次春季校园招聘10人备考题库含答案详解(模拟题)
- 2025-2030玉树藏羌彝文化走廊旅游产业开发与品牌建设方案
- 2025-2030游轮租赁业务运营模式分析船舶建造周期影响企业闲置资产盘活分析解决方案
- 2025-2030游戏电竞产业市场投资现状规划
- 2025-2030港口行业市场深度调研及发展趋势与市场策略研究报告
- 2026年4月江苏扬州市宝应县教育系统事业单位招聘教师24人备考题库及完整答案详解1套
- 集群无人机自主编队研究课题申报书
- 肥料厂原料采购制度
- 江苏省九校2026届高三下学期3月联考 政治+答案
- 2026年西安医学院第一附属医院招聘(62人)笔试备考试题及答案解析
- 2026年江西省公安厅招聘警务辅助人员笔试试题(含答案)
- 深度解析(2026)《SYT 7776-2024 石油天然气风险勘探目标评价规范》
- 2026年1月浙江省高考首考英语试卷真题完整版(含答案+听力)
- 外墙防水施工工艺方案
- 2026年陕西国防工业职业技术学院单招职业技能考试题库附答案解析
- 2025年新《治安管理处罚法》知识考试题库及答案
- 2026年安全员之C证(专职安全员)考试题库500道附参考答案【完整版】
评论
0/150
提交评论