• 2024-11-18【python系列】python数据类型的分类和比较
    一、数据类型的定义在程序设计的类型系统中,数据类型(英语:Datatype),又称资料型态、资料型别,是用来约束数据的解释。——Wikipedia从定义我们可以看出来,数字类型的理解最主要的是约束数据的解释,每个类型都有他们自己所使用得场景,这个就是数字类型的分类,分类的结果可以方便
  • 2024-11-10540. 有序数组中的单一元素
    文章目录问题描述解决思路代码示例复杂度分析问题描述给你一个仅由整数组成的有序数组,其中每个元素都会出现两次,唯有一个数只会出现一次。请你找出并返回只出现一次的那个数。你设计的解决方案必须满足O(logn)时间复杂度和O(1)空间复杂度。解决思路题
  • 2024-11-03有序数列合并C++
    将两个数列合并为一个数列,并从小到大排序题目描述输入两个升序排列的序列,将两个序列合并为一个有序序列并输出。输入描述输入包含三行,第一行包含两个正整数n,m(1≤n,m≤100),用空格分隔。n表示第二行第一个升序序列中数字的个数,m表示第三行第二个升序序列中数字的个数。
  • 2024-10-31有序二叉树简介
    有序二叉树有序二叉树:左边的结点值小于当前结点,右边结点值大于当前结点。有序二叉树结点模型root表示指向根结点的指针。构建有序二叉树判断root是否为nullroot为空,root=node如果root不为空,定义index游标,初始值==root。判断index和node结点值的大小二叉树的
  • 2024-10-22即时通讯:消息如何保证有序?
    1.消息如何保证有序?参考:http://www.52im.net/thread-714-1-1.html消息有序即发送的顺序和收到的顺序一致消息头字段内容包括:发送方id,接收方id,消息msg_id,消息类型,创建时间,大小等messageIMMsgData{ cmdid:0x0301//消息数据指令ID uint32from_user_id=1;
  • 2024-10-22将有序数组转换为二叉搜索树
    给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 平衡 二叉搜索树。示例1:输入:nums=[-10,-3,0,5,9]输出:[0,-3,9,-10,null,5]解释:[0,-10,5,null,-3,null,9]也将被视为正确答案:示例2:输入:nums=[1,3]输出:[3,1]解释:[1,null,3]和[3
  • 2024-10-18常见排序算法
    插入排序直接插入排序原理:一开始将数据分为两部分,初始数据当做无序,每一次从待排序队列中取出一个值,放到已经排序好的队列中,然后将其调整有序,再取下一个值,直到待排序队列中没有值。调整规则:将待插入的值和有序队列中的所有值从右向左逐个比较,找到一个小于或者等于自己的值,则
  • 2024-10-18二叉树和度为二的有序树的区别
    一、定义与结构度为二的有序树:在这种树结构中,每个节点最多有两个子节点。子节点的顺序是重要的,即使两个子节点的值相同,只要他们的位置不同,他们就被视为是不同的子节点。当一个节点只有一个子节点时,该子节点的位置(左或右)并无特定要求,也即无需区分其左右次序。二叉树:二叉树
  • 2024-10-09有序数组的平方
    实际上需要考虑的是两个数组的按序合并,思路还是双指针法,很容易想到合并后数组的最大值只会在最左边或者最右边,而去掉这个元素后也是一样的操作。因此左指针从负数的最大值即最左边开始,右指针从正数的最大值即最右边开始,比较后更新位置。这里需要想清楚的是结束条件,实际上更新位置
  • 2024-09-2921_合并两个有序链表
    21_合并两个有序链表【问题描述】将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例一:输入:l1=[1,2,4],l2=[1,3,4]输出:[1,1,2,3,4,4]示例二:输入:l1=[],l2=[]输出:[]示例三:输入:l1=[],l2=[0]输出:[0]
  • 2024-09-26[redis命令]set&zset命令汇总
    set命令命令含义SADD向集合添加一个或多个成员SCARD获取集合的成员数SDIFF返回给定所有集合的差集SDIFFSTORE返回给定所有集合的差集并存储在destination中SINTER返回给定所有集合的交集SINTERSTORE返回给定所有集合的交集并存储在destination中SISMEMBER判断member
  • 2024-09-22归并排序
    选择排序......定义归并排序(mergesort)是高效的基于比较的稳定排序算法。性质归并排序基于分治思想将数组分段排序后合并,时间复杂度在最优、最坏与平均情况下均为O(nlogn),空间复杂度为O(n)。归并排序可以只使用O(1)的辅助空间,但为便捷通常使用与原数组等长的辅助
  • 2024-09-22数据结构之线性表——LeetCode:80. 删除有序数组中的重复项 II,88. 合并两个有序数组,4. 寻找两个正序数组的中位数
    80.删除有序数组中的重复项II题目描述80.删除有序数组中的重复项II给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用O(1)额外
  • 2024-09-1933. 搜索螺旋数组
    题目描述:整数数组nums按升序排列,数组中的值互不相同。在传递给函数之前,nums在预先未知的某个下标k(0<=k<nums.length)上进行了旋转,使数组变为[nums[k],nums[k+1],...,nums[n-1],nums[0],nums[1],...,nums[k-1]](下标从0开始计数)。例如,[0,1,2,4,5,6,7]在
  • 2024-09-15一张图精通多种搜索算法的选择策略(经验篇)
    在探索数据的海洋中,搜索算法是指引我们找到目标的灯塔。从简单的线性搜索到高效的二分搜索,再到深度优先与广度优先的图搜索,每种算法都以其独特的方式优化着搜索过程。无论是在数组、树结构还是散列表中,正确的搜索算法能显著提升查找效率。本文将带你一探线性搜索、二分搜索、深度优
  • 2024-09-09[Python手撕]合并两个有序链表
    #Definitionforsingly-linkedlist.#classListNode:#def__init__(self,val=0,next=None):#self.val=val#self.next=nextclassSolution:defmergeTwoLists(self,list1:Optional[ListNode],list2:Optional[ListNode])->
  • 2024-09-08有序数组的平方
    题目描述:给你一个按非递减顺序排序的整数数组nums,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。示例1:输入:nums=[-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为[16,1,0,9,100]排序后,数组变为[0,1,9,16,100]示例2:输入:nums=[-7,-3,2,3,11]
  • 2024-09-06数据结构-绪论
    1.可以用抽象数据类型定义有一个完整的数据类型。抽象数据类型包括数据对象,数据关系,抽象运算。数据结构:逻辑结构+数据运算。2.有序表属于逻辑结构。有序表是一种逻辑结构,它只描述了数据元素之间的逻辑关系,而与实际的物理存储方式无关。这种逻辑上的有序性意味着表中的元素
  • 2024-09-03有序行转列
    一、基础数据有配送订单表记录骑手配送的物品类型、送达时间、顾客id、配送举例及配送费。+-----------+-----------+-------------+----------------------+--------------+-----------+----------+|rider_id|order_id|goods_type|delivery_time|cus
  • 2024-09-03Redis数据结构:Zset类型全面解析
    Redis数据结构:Zset类型全面解析Redis,作为一种高性能的键值对数据库,因其丰富的数据类型和高效的性能而受到了广泛的关注和使用。在Redis的五种主要数据类型中,Zset(有序集合)类型可能是最复杂,但也是最强大的一种。Zset不仅可以存储键值对,还可以为每个元素分配一个分数,然后根
  • 2024-09-02Leetcode——1.合并有序数组
    给你两个按非递减顺序排列的整数数组nums1_和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2_到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初
  • 2024-08-27从混乱到有序:10款建筑项目管理软件推荐
    国内外主流的10款建筑企业项目管理系统对比:PingCode、Worktile、广联达、泛普软件、建文软件、Asana、Trello、Basecamp、Jira、Monday.com。在建筑行业,找到一个能够高效管理时间、成本和资源的项目管理系统常常是一项挑战。这种系统的选择不仅影响项目的流程和效率,还直接关
  • 2024-08-25C++编程-数据排序2
    关于以后的更新已经8月25号了,即将接近CSP-J/S,因此,在数据排序算法更新完后,我们会重点更新CSP的试卷以及知识点,希望大家在考试中旗开得胜!回顾数据排序1在数据排序1中,我们讲解了选择、冒泡、插入、桶、快速排序,并留下了2道题目,今天就来解答这两道题目一:冒泡排序#include<st
  • 2024-08-223.6 zset(有序集合)
    zset(有序集合)有序集合(score/value),去重并且根据score权重值来进行排序的。score从小到大排列。(1)添加成员zaddkeyscore1member1score2member2score3member3....设置榜单achievements,设置成绩和用户名作为achievements的成员127.0.0.1:6379>zaddachievements61xiao
  • 2024-08-21如何去除有序数组中的重复元素
    题目要求:输入一个有序的数组,你需要原地删除重复的元素,使得每个元素只能出现一次,返回去重后新数组的长度题目分析:原地删除,即不可以创建新的辅助数组,那么需要在原数组上修改解决。这种一般采用双指针技巧即:如果是普通数组,使用两个指针slow和fast,fast负责网后遍历,如果发现数组元素