题目

给定链表的头节点head,整数a和b,实现删除位于a/b处节点的函数。

链表:1->2->3->4->5,假设a/b的值为r
如果r等于0,不删除任何节点
如果r在(0,1/5],删除节点1
如果r在(1/5,2/5],删除节点2
如果r在(2/5,3/5],删除节点3
如果r在(3/5,4/5],删除节点4
如果r在(4/5,1],删除节点5
如果r大于1,不删除任何节点

思路

设n为链表长度,对a/b*n进行向上取整后的数值,即为该删除的节点。


源码

public class Node{public int value;public Node next;public Node(int data){this.value=data;}
}public Node removeByRatio(Node head,int a,int b){if(a<1||a>b){return head;}int n=0;Node cur=head;while(cur!=null){n++;cur=cur.next;}n=(int) Math.ceil((double)(a*n)/(double)b);if(n==1){head=head.next;}if(n>1){cur=head;while(--n!=1){cur=cur.next;}cur.next=cur.next.next;}return head;
}

链表问题3——删除链表的a/b处的节点(进阶)相关推荐

  1. 链表问题3——删除链表的中间节点(初阶)

    题目 给定链表的头节点head,实现删除链表的中间节点的函数. 不删除任何节点 1->2, 删除节点1 1->2->3,删除节点2 1->2->3->4,删除节点2 ...

  2. 假设以带头结点的循环链表表示队列_[leetcode链表系列]2 删除链表中的节点

    复习链表的插入 链表的一个节点是由数据域和指针域构成,指针域的地址值为下个元素的地址.那么我们需要插入或者删除一个元素怎么处理呢? 先查看原始链表结构,准备将结点x插入链表中. 此时我们需要先保存n节 ...

  3. 链表题目---4 删除链表中重复的结点 和 判断链表是否为回文链表

    删除链表中重复的结点 /* struct ListNode {int val;struct ListNode *next;ListNode(int x) :val(x), next(NULL) {} ...

  4. 【链表】leetcode19.删除链表的倒数第N个节点(C/C++/Java/Js)

    leetcode19.删除链表的倒数第N个节点 1 题目 2 思路 3 代码 3.1 C++版本 3.2 C版本 3.3 Java版本 3.4 JavaScript版本 4 总结 1 题目 题源链接 ...

  5. 【算法】【链表模块】删除链表的中间节点或a/b节点

    目录 前言 问题介绍 解决方案 代码编写 java语言版本 c语言版本 c++语言版本 思考感悟 写在最后 前言 当前所有算法都使用测试用例运行过,但是不保证100%的测试用例,如果存在问题务必联系批 ...

  6. 链表题目--1 删除链表中所有等于val的值

    注意事项 要删除的结点相邻 第一个结点就是要删除的结点 /*** Definition for singly-linked list.* struct ListNode {* int val;* st ...

  7. 链表排序c++代码_[链表面试算法](一) 链表的删除-相关题型总结(6题)

    在数据结构的最高层抽象里,只有两种结构,数组和链表.这两种结构,是所有其他数据结构实现的基础.队列和栈,可以用链表和数组来实现.图,可以用邻接表和邻接矩阵来实现,其中,邻接表就是链表,邻接矩阵就是数组 ...

  8. c语言 增加 删除 修改的功能 不用链表,C语言的链表的创建、修改、添加与删除...

    /*有点菜学完C之后自己写的*/ //欢迎评论缺点QQ3027887754 备注C #include#include#include typedef struct nnn { int num; str ...

  9. python删除链表中的某一个值_删除链表中等于给定值val的所有节点(python实现)...

    原博文 2016-03-30 18:00 − Example: Given 1->2->3->4->5->3, val = 3, return the list as 1 ...

最新文章

  1. java接监控摄像头接口_离奇!深夜隧道内,12个摄像头突然一个接一个“瞎”了,监控员吓懵了...
  2. Scala概述及学习Scala的优势
  3. ASP.NET Core 设置允许跨域访问
  4. 数据科学 IPython 笔记本 8.3 Matplotlib 可视化
  5. 值类型和引用类型的区别?
  6. MKAnnotationView,MKAnnotation与MKMapView结合使用显示坐标点
  7. Xp3下VMWare中Ubuntu12.04 联网
  8. Vue前端开发环境搭建
  9. 数据包络分析法(DEA)_1
  10. 阻止第三方 cookie_如何在每个Web浏览器中阻止第三方Cookie
  11. c# rar解压大小_C#解压、压缩RAR文件
  12. 超实用!教你用 Python 获取并下载美股数据
  13. 谁发明了区块链?谁是中本聪?
  14. 完美解决微信页面返回不刷新问题
  15. 静态网网页设计成品下载
  16. EAS BOS:BOS工具导入解决方案失败常见问题分析
  17. C语言如何制作dIL文件,C语言怎么加循环
  18. 贴片电解电容正负极区分
  19. 修改 nginx 的默认端口
  20. 阿里巴巴图标库的使用

热门文章

  1. 糟心!苹果无人车裁员190人,程序员却首当其冲
  2. 滴滴裁员补偿丰厚,员工称裁出幸福感?
  3. 干货 | 谷歌BERT模型fine-tune终极实践教程
  4. 北京大兴要打造成未来科技新中心?
  5. 599元的智能视频音箱发布,百度准备补贴几个亿?
  6. JetBrains打造的开发神器,一套代码适应多端!
  7. 服务端如何防止订单重复支付!
  8. 新技能 MyBatis 千万数据表,快速分页!
  9. 听说你有10年的工作经验?还是你把1个经验反复用了10年?
  10. 推荐一款 Java 对象映射神器