首页 > 其他分享 >删除单链表中所有介于给定的两个值之间的元素的元素

删除单链表中所有介于给定的两个值之间的元素的元素

时间:2023-05-31 11:03:55浏览次数:35  
标签:pre 结点 单链 元素 next 表中 指针

设在一个带头结点的单链表中所有元素结点的数值域无序,编写一个函数,删除表中所有介于给定的两个值(作为函数参数给出)之间的元素的元素(若存在)

分析:因为链表是无序的,所以只能逐个结点进行检查,执行删除

代码如下:

void Delete_Range(LinkedList& L, int min, int max)
{
	LNode* p = L->next;		//p为遍历指针
	LNode* pre = L;			//pre为比遍历指针的前驱指针
	while(p) {
		if(p->data > min && p->data < max) {	//找到待删除结点
			pre->next = p->next;
			free(p);
			p = pre->next;
		} else {			//否则继续找被删除结点
			pre = p;		//pre指针向后移
			p = p->next;	//p指针向后移
		}
	}
}

标签:pre,结点,单链,元素,next,表中,指针
From: https://www.cnblogs.com/xiaomitu/p/17445422.html

相关文章

  • dfs 二叉树中序遍历迭代解法——求解BST中第k小元素
    BST中第K小的元素中文English给一棵二叉搜索树,写一个 KthSmallest 函数来找到其中第K小的元素。Example样例1:输入:{1,#,2},2输出:2解释: 1 \ 2第二小的元素是2。样例2:输入:{2,1,3},1输出:1解释:2/\13第一小的元素是1。Challenge如果这棵BST经常会被修改(......
  • 计算画布内旋转元素的边界坐标
    svg,dom类的图形编辑器,在画布内编辑元素完成后,为了得到只包含元素的部分,去掉画布的留白,或者进行编组时,往往需要计算元素在画布内的边界坐标,重新生成输出元素的坐标1、对于无旋转等几何变化的基本元素,计算元素的边界坐标是很容易的(以屏幕坐标为准)如下图,只需遍历每个元素的四个......
  • 单链表(c++实现)
    template<typenameT>classListNode{public:explicitListNode(Tvalue_,ListNode*next_=nullptr):value(value_),next(next_){}TgetValue()const{returnvalue;}ListNode<T>*getNext()const{returnnext;};voidsetNext(ListNo......
  • 单链表
    1、特点:任意存储,顺序存取2、结构体定义和预定义#include<stdio.h>#include<stdlib.h>//malloc函数#defineElemTypeint#defineStatusint#defineERROR0#defineOK1typedefstructLnode{ElemTypedata;structLnode*next;}Lnode,*Linklist;3、初始......
  • 移除链表元素
    代码随想录中的一道基础算法题,这里记录下设置一个虚拟头结点在进行删除操作通过设置虚拟头节点,原链表的所有节点就都可以按照统一的方式进行移除了。classSolution{public:ListNode*removeElements(ListNode*head,intval){ListNode*dummyHead=new......
  • jQuery 元素尺寸
    width()/height()取得四配元素宽度和高度值只算width/heightinnerWidth()/innerHieght取得四配元素宽度和高度值包含paddingouterWidth()/outerHeight()取得四配元素究度和高度值包含padding.borderouterWidth(true)!outerHeight(true)取得匹配元素宽度和高度值包含padding......
  • uiautomator2获取UIObject元素的属性info用法
    info是UIAutomator2中用来获取控件属性信息的方法。该方法可以获取到指定元素的一些属性信息,例如控件的文本、坐标、大小、类名、包名、是否可见等。使用该方法可以帮助我们更好的理解应用程序的UI结构,并找到需要操作的控件元素。d(text=element,instance=index).infoinfo是U......
  • vue组件中修改组件外元素样式
    在实际开发中,由于项目一开始设计的一些不合理性,会在组件中通过html[media=pad]{.xxx{/*组件样式*/}}以上方式修改某些组件的样式,这样会涉及到从html层级选择,由于我style标签是这样写的<stylelang="less"scoped></style>所以导致组件内部无法......
  • 使用 Collections中的replaceAll方法 替换list中的指定元素
    以下实例演示了如何使用Collections类的replaceAll()来替换List中所有的指定元素:importjava.util.Arrays;importjava.util.Collections;importjava.util.List;publicclassImoocStudent{publicstaticvoidmain(String[]args)throwsException{......
  • Java8 List集合如何移除满足条件的元素
    1.移除List<String>中指定元素for(inti=assSupplementList.size()-1;i>=0;i--){TypgHouseOrderAssessmentSupplementitem=assSupplementList.get(i);if(item.getBzx().contains("新建房屋")){ass......