2024-11-05 23:11:12
262
67
本章节包括的题目有:| 礼物的最大价值| 简单|| 最长不含重复字符的子字符串| 简单||丑数|中等||第一个只出现一次的字符|简单||数组中的逆序对|困难||两个链表的第一个公共节点|简单||在排序数组中查找数字 I|中等||0~n-1中缺失的数字 |简单||二叉搜索树的第k大节点 |简单||二叉树的深度 |简单|
2024-10-27 22:10:18
251
920
这篇博客深入探讨了六种 C 特殊类的设计及其技术细节。首先,介绍了如何设计只能在堆上或栈上创建对象的类,通过控制构造函数的访问权限来限定对象的内存分配区域。接着,探讨了如何设计一个不能被拷贝的类,避免资源重复释放的问题。随后,介绍了如何防止类被继承以及单例模式的实现,确保类的封闭性和唯一实例的创建。最后,讲解了只能移动的类设计,通过移动语义提升程序性能。这些设计在不同的实际场景中具有重要应用,帮助开发者优化内存管理和对象生命周期的控制。
2024-09-27 09:09:59
758
468
Property的应用说明补充:一.自定义逻辑:二.计算属性:三.访问器(Accessors):四. 实例:4.1实例界面4.2实例代码
2024-09-27 09:09:33
970
20
一.委托的多播(Multicasting of a Delegate):二.应用示例:三.委托(Delegate)的用途:
2024-08-30 03:08:58
302
738
SPRINGBOOT天猫整站,基于前后端分离思想, 由于该商城高并发的特点,后端框架便使用了方便维护的SpringMVCSpringBoot框架,而前端框架则选择了主流的BootStrapVue.jsJQuery三大前端框架,页面使用Thymeleaf3渲染。为了方便校验登录和访问控制授权在安全框架方面使⽤了Shiro,因为该项目的数据使用JPA进行DAO操作, 所以在搜索引擎方面使⽤和SpringBoot兼容性高的搜索引擎。在SpringBoot上有专门JPA 接口进行DAO操作。
2024-08-30 03:08:21
788
268
首先,我们通过抓包工具进入某音的直播间,捕获其网络通信数据,重点关注WebSocket连接。发现直播弹幕数据通过WebSocket传输,这种方式比传统的HTTP更适合实时数据的传输。我们在浏览器开发者工具中打开WebSocket的堆栈调试,分析数据传输的过程,定位关键的JavaScript代码。在JavaScript文件中搜索“.decode”,找到第一个搜索结果并仔细观察,这是解密二进制数据的关键位置。在找到弹幕数据传输的位置后,我们可以开始植入自定义的JavaScript代码,以捕获并解密弹幕数据。_抖音直播间js注入
2024-08-19 22:08:10
350
244
括起来的字符串(String)、数值(Number)、布尔值(true/false)、 null、对象(Object)或者数组(Array),这些结构可以嵌套。JSON 和 XML都是常用的数据交换格式。它们之间有什么区别呢?可以看到,JSON 比 XML 更加简洁,没有了冗余的标签和属性。数组(array)是值(value)的有序集合。,对应的值是字符串、数字和字符串。值(value)可以是花括号。JSON 字符串是由双引号。在这个例子中,对象的键是。在这个例子中,字符串。在这个例子中,布尔值。_数组和对象
2024-08-18 22:08:41
59
181
本文详细解释了JavaScript中数组的shift()和splice()操作的复杂度,指出查找元素在数组中的操作为O(1),而修改操作如在特定索引删除为O(n)。同时介绍了对象作为哈希表的存储方式及其操作复杂度。
2024-08-18 22:08:44
526
454
鸿蒙应用开发,5.0版本DEV ECO Studio 从无到有实现一个计算器,最全,按钮动画、滑动退格以及基础运算功能_鸿蒙标准计算器页面布局代码
2024-08-05 23:08:43
164
435
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人们阅读和编写,同时也易于机器解析和生成。JSON 是基于 JavaScript 的一个子集,虽然 JSON 是基于 JavaScript 的,但可以在许多编程语言中使用。现代的大多数编程语言都内置了 JSON 库,或者可以使用第三方库来方便地解析和生成 JSON 数据。。在Arduino框架下,使用ESP32处理JSON数据是物联网开发中一个普遍的需求。_arduinojson
2024-07-30 22:07:13
975
340
JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式,它是基于JavaScript语言的子集,但是独立于编程语言的文字格式。JSON格式易于阅读和编写,同时也易于机器解析和生成。它常用于前端和后端之间的数据交换以及存储配置信息。JSON数据由键值对构成,可以表示对象和数组。由于其简洁性和易用性,JSON已经成为了互联网上常用的数据交换格式之一。_json格式
2024-07-10 22:07:58
435
637
本文详细介绍了如何在ElementUI的el-table中实现数据列可变时的排序,包括默认排序、自定义排序方法以及处理不确定数据时通过sort-change事件进行后端或前端排序的技巧。
2024-06-18 00:06:30
384
286
1、:first 用法: $(“tr:first”) ; 返回值 单个元素的组成的集合2、:last 用法: $(“tr:last”) 返回值 集合元素3、:not(selector)用法: $(“input:not(:checked)”)返回值 集合元素4、:even 用法: $(“tr:even”) 返回值 集合元素5、: odd 用法: $(“tr:odd”) 返回值 集合元素6、:eq(index)用法: $(“tr:eq(0)”) 返回值 集合元素7、:gt(index)用法: $(“tr:gt(_过滤选择器
2024-06-14 09:06:02
910
908
我们在查询mysql数据时,查询某个字段的数剧是我们经常接触的,直接使用sql语句或者更方便的直接使用数据库的orm语句查询。但是如果需要查询某个json字段里面的某些数据,orm模型可能都无法达到效果,还不如直接使用sql语句进行查询来的直观。下面总结了一些sql语句查询json字段里面的值。_mysql查询json数组内某一个对象字段的值
2024-06-02 09:06:49
608
611
在使用Openlayers、leaflet、mapbox等地图控件的时候,GeoJSON几乎是不可避免打交道的数据类型,如果您想要从事gis行业相关的开发工作,本篇文章应该能为您带来一些帮助。_将一个shapefile文件转化为geojson
2024-06-01 10:06:55
789
855
复习到离散数学图论时,想起来这个算法,感觉很有写博客的必要!今天这篇博客就来讲一下查找最短路径的Dijkstra算法。Dijkstra 算法,是由荷兰计算机科学家 Edsger Wybe Dijkstra 在1956年发现的算法,戴克斯特拉算法使用类似广度优先搜索的方法解决赋权图的单源最短路径问题。Dijkstra 算法原始版本仅适用于找到两个顶点之间的最短路径,后来更常见的变体固定了一个顶点作为源结点然后找到该顶点到图中所有其它结点的最短路径,产生一个最短路径树。本算法每次取出未访问结点中距离最小的_迪杰斯特拉算法求最短路径图解
2024-06-01 10:06:40
903
731
空间复杂度表示算法在运行过程中需要使用的额外的空间资源。空间复杂度的计算通常是以算法需要的额外空间大小来衡量的。链表是一种常见的数据结构,用于存储和操作一系列具有关联关系的数据元素。链表的面试题常见的有:反转链表: 将一个链表反转,即将链表中的节点逆序排列。链表中倒数第k个节点: 找到链表中倒数第k个节点的值。链表是否有环: 判断一个链表是否存在环。合并两个有序链表: 将两个有序链表合并为一个有序链表。删除链表中的重复元素: 删除链表中重复的元素,使得每个元素只出现一次。
2024-06-01 10:06:35
738
70
顺序表的优点:适合下标查找和更新的场景缺点:1、不方便进行插入和删除操作,因为要移动数组元素,最坏情况下时间复杂度会达到O(n)2、扩容可能会浪费空间,例如长度为100的顺序表放满了,这时插入1个元素,顺序表就会扩容1.5倍,即多50个位置但实际只存储了1个元素,造成空间浪费
2024-06-01 10:06:45
301
10
在C 11中,STL又提供了4个unordered系列的关联式容器,这四个容器与红黑树结构的关联式容器使用方式基本类似,只是其底层结构不同(哈希表)
2024-06-01 10:06:39
890
270
如果数据已经在缓存中(缓存命中),那么CPU就可以直接从缓存中读取数据,而不需要从主存中读取,从而提高了程序的运行效率。由于数组的物理地址是连续的,因此数组中的数据在缓存中的命中率更高,减少了从主存中读取数据的次数,从而提高了缓存利用率。但是,链表的节点在物理存储上是不连续的,因此链表中的数据在缓存中的命中率相对较低。在访问一块数据内存空间时,要先把内存加载到缓存,在对其进行访问,而其并不是没此访问一个内存就将其加载到缓存,而是访问一块内存时将其后面的连续的内存一起加载到缓存,然后在对其进行访问。_栈用链表还是数组实现
2024-05-19 09:05:00
534
417
这里我们的思路就是定义一个变量begin,作为未排序序列的第一个数,定义一个变量mini保存最小数的下标。更要命的,一次交换完,begin和end收缩,a[0]与a[10]的位置已经固定,无法再改动,导致程序越运行越错。这里每次找到最小的那个元素,将其与未排序序列的第一个元素交换,交换后最小的那个元素已经找到,再从未排序序列中找第二小的元素......直到序列完全有序。它的算法思想是每一次从待排序的。根据我们上面的分析,改动版的的代码就是一次完成最大、最小两个数的排序,实际上与一个数的排序并没有什么不同。
2024-05-19 09:05:47
979
362
节点高度”是指从该节点到它的最远叶节点的距离,即所经过的“边”的数量。唯一的区别在于,在 AVL 树中插入节点后,从该节点到根节点的路径上可能会出现一系列失衡节点。如下表所示,我们通过判断失衡节点的平衡因子以及较高一侧子节点的平衡因子的正负号,来确定失衡节点属于图 7-32 中的哪种情况。AVL 树的特点在于“旋转”操作,它能够在不影响二叉树的中序遍历序列的前提下,使失衡节点重新恢复平衡。类似地,在二叉搜索树的删除节点方法的基础上,需要从底至顶执行旋转操作,使所有失衡节点恢复平衡。,执行“右旋”操作。
2024-05-19 09:05:02
271
470
【数据结构-之八大排序(下),冒泡排序,快速排序,挖坑法,归并排序】
2024-05-14 23:05:05
1004
911
用array.filter()来实现数据筛选、数据清洗和链式调用,相对于for循环更加清晰,语义化强,能显著提升代码的可读性和可维护性。_array.filters用法
2024-05-13 10:05:57
133
1
Array的forEach方法遍历数组,不可以用break或continue,通常用于需要全部遍历完成的场景。value(数组元素,必须),index(索引),arr(数组)是数组循环的一种方法,它自身包含三个参数(_js array foreach
2024-05-08 10:05:43
198
562
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于Web应用之间的数据传输。它由键值对构成,可以表示复杂的数据结构。JSONL是一种将多个JSON对象按行分隔存储的格式,每行都是一个独立的JSON对象本文介绍了如何使用Python将文件保存为JSON和JSONL格式的数据。我们详细讨论了JSON和JSONL的概念、优势和用途,并提供了示例代码和使用说明。希望本文能够帮助你在数据处理中灵活、高效地使用这两种常用的数据格式。_jsonl和json
2024-03-15 10:03:28
278
567
Array数组slice()方法:从原数组中连续提取多个数,构成新数组。slice 会提取原数组中索引从 begin 到 end 的所有元素(包含 begin,但不包含 end)。如果begin参数缺省则为0,如果 begin 超出原数组的索引范围,则会返回空数组。从已有的数组中选取部分元素来构成新的数组。原数组中的倒数第几个元素开始提取。原数组begin下标开始提取元素。新数组中不包含下标为end的数值。原数组中的倒数第几个元素结束抽取。原数组end下标提取结束。_arr.slice
2024-03-03 11:03:54
385
536
HTML 实体解析器」 是一种特殊的解析器,它将 HTML 代码作为输入,并用字符本身替换掉所有这些特殊的字符实体。,请你实现一个 HTML 实体解析器,返回解析器解析后的结果。
2024-02-19 09:02:03
893
284
Set类似于数组,但是成员的值都是唯一的,没有重复的值。也就是说它是一系列无序,没有重复数值的数据集合。很多时候我们把Set叫做集合,但是,Set可以是集合,集合不一定是Set。_js set
热门排行