自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 MySQL连接

mysql连接

2024-06-25 10:24:52 391 1

原创 GPT-5:开启AI新纪元与未来社会的无限可能

近日,OpenAI的首席技术官米拉·穆拉蒂在达特茅斯工程学院的采访中透露,备受期待的GPT-5将在一年半后正式发布。这一消息无疑在全球科技界引起了广泛的关注和热烈的讨论。作为继GPT-4之后的全新一代大语言模型,GPT-5被寄予厚望,不仅因为其强大的自然语言处理能力,更因为它预示着人工智能技术在未来社会的无限可能性。GPT-5的发布,意味着人工智能语言模型从“高中生”智力水平跃升至“博士”级别,这一飞跃不仅仅是技术层面的进步,更是对人类智能边界的一次大胆探索。

2024-06-24 13:12:01 1023 1

原创 Elasticsearch:赋能数据搜索与分析的利器

Elasticsearch是一个基于Lucene的分布式搜索和分析引擎,它提供了一个全文搜索引擎,具有HTTP Web界面和无模式JSON文档。其设计目标是快速、可靠和可扩展,能够轻松地处理大规模数据,并支持复杂的搜索查询和数据分析。

2024-06-24 13:03:26 1092

原创 分数限制下,选好专业还是选好学校?

分数限制下,选好专业还是选好学校?

2024-06-22 10:30:00 260

原创 AI:音乐创作的未来还是毁灭的序曲?

AI:音乐创作的未来还是毁灭的序曲?

2024-06-21 15:39:31 327

原创 CAP理论

CAP理论

2024-06-13 10:01:56 964 1

原创 通用大模型与垂直大模型

随着人工智能技术的飞速发展,大模型已成为推动AI进步的重要力量。在众多大模型中,通用大模型和垂直大模型因其各自独特的特点和应用场景而备受关注。本文将详细探讨这两种大模型的特点、应用场景,并阐述我为何更青睐通用大模型。

2024-06-12 21:00:00 946

原创 RabbitMQ概述

rabbitmq概述

2024-06-12 14:51:13 1714

原创 Nginx与Gateway

nignx与gateway特点,相同与不同

2024-06-12 10:30:57 1214

原创 Redis缓存技术详解与实战

Redis作为一个开源的内存数据结构存储系统,它可以用作数据库、缓存和消息代理。在现代高并发、大数据量处理的系统中,Redis作为缓存层的应用越来越广泛。本文将详细讲解Redis在查询、添加缓存、更新缓存、缓存预热、缓存穿透、缓存雪崩、缓存击穿等场景下的应用及解决方案,并通过实例代码来加深理解。

2024-06-11 16:55:05 1164

原创 redis安装

redis安装

2024-06-11 16:26:17 885 1

原创 Redis:原理、概念、用法与实例解析

在当今风起云涌的技术领域中,Redis 犹如一颗璀璨的明星,闪耀着独特的光芒。它作为一种备受瞩目的数据存储和缓存解决方案,以其卓越的性能、丰富多样的功能以及简单易用的特性,成为了众多开发者的心头好。在这篇博客中,我们将全方位、深层次地探讨 Redis 的基本原理、关键概念、实用用法,并通过具体生动的例子来进一步加深我们对它的理解。

2024-06-11 16:07:55 1391 2

原创 串的定义,实现和模式匹配

串:是由零个或多个字符组成的有限序列。空串:不包含任何字符的串称为空串。子串:串中任意个连续的字符组成的子序列称为该串的子串。空格串:由一个或多个空格组成的串称为空格串(空格串不是空串,其长度为串中空格字符的个数)。

2023-09-04 22:15:38 162

原创 浅谈栈与队列

栈只只允许在一端进行插入或删除操作的线性表。首先栈是一种线性表,但限定这种线性表只能在某一端进行插入和删除。栈顶Top:线性表允许插入和删除的那一端。栈底Bottom:固定的,不允许进行插入和删除的另一端。

2023-08-29 20:42:50 83

原创 浅谈线性表

线性表分为顺序表和链表,首先介绍线性表的定义和基本操作,其次介绍线性表的链式表示,单链表的定义,单链表的基本操作,双链表,循环链表,静态链表,最后总结顺序表和链表的比较。

2023-08-23 01:14:48 583

原创 javaee配置文件

applicationContext.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instan

2021-12-22 15:14:53 487 1

原创 leetcode每日一题

爬楼梯假设你正在爬楼梯。需要 n阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1 阶 + 1 阶2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。3. 1 阶 + 1 阶 + 1 阶4. 1 阶 + 2 阶5. 2 阶 + 1 阶题解private static int climbStairs(int n) {

2021-10-27 17:26:15 101

原创 leetcode每日一题

加一给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例1:输入:digits = [1,2,3]输出:[1,2,4]解释:输入数组表示数字 123。示例2:输入:digits = [4,3,2,1]输出:[4,3,2,2]解释:输入数组表示数字 4321。示例 3:输入:digits = [0]输出:[1]题解public static

2021-10-25 21:54:06 100

原创 leetcode每日一题

最后一个单词的长度给你一个字符串 s,由若干单词组成,单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。单词是指仅由字母组成、不包含任何空格字符的最大子字符串。示例 1:输入:s = “Hello World”输出:5示例 2:输入:s = " fly me to the moon "输出:4示例 3:输入:s = “luffy is still joyboy”输出:6题解一private static int lengthOfLastWord(String

2021-10-24 23:45:16 162

原创 leetcode每日一题

搜索插入位置给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。示例 1:输入: nums = [1,3,5,6], target = 5输出: 2示例2:输入: nums = [1,3,5,6], target = 2输出: 1示例 3:输入: nums = [1,3,5,6], target = 7输出: 4示例 4:输入: nums = [1,3,5,6],

2021-10-23 17:08:27 96

原创 leetcode每日一题

实现strStr()给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回 -1 。说明:当 needle 是空字符串时,我们应当返回什么值呢?这是一个在面试中很好的问题。对于本题而言,当 needle 是空字符串时我们应当返回 0 。这与 C 语言的 strstr() 以及 Java 的 indexOf() 定义相符。示例 1:输入:haystack = “hello”, ne

2021-10-22 20:01:28 70

原创 leetcode每日一题

删除有序数组中的重复数给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝int len = removeDu

2021-10-21 16:23:55 107

原创 leetcode每日一题

合并两个有序链表将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例 1:输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]示例 2:输入:l1 = [ ], l2 = [ ]输出:[ ]示例 3:输入:l1 = [], l2 = [0]输出:[0]题解/** * Definition for singly-linked list. * public class ListNode { *

2021-10-20 20:59:52 75

原创 leetcode每日一题

有效括号给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。示例 1:输入:s = “()”输出:true示例 2:输入:s = “()[]{}”输出:true示例 3:输入:s = “(]”输出:false示例 4:输入:s = “([)]”输出:false示例 5:输入:s = “{[]}”输出:true提示:1 <= s.len

2021-10-19 20:27:11 61

原创 leetcode每日一题

最长公共前缀题目编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例 1:输入:strs = [“flower”,“flow”,“flight”]输出:“fl”示例 2:输入:strs = [“dog”,“racecar”,“car”]输出:""解释:输入不存在公共前缀。提示:1 <= strs.length <= 2000 <= strs[i].length <= 200strs[i] 仅由小写英文字母组成题解cl

2021-10-18 11:20:16 59

原创 leetcode每日一题

罗马数字转整数罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做II,即为两个并列的 1。12 写做XII,即为X+II。27 写做XXVII, 即为XX+V+II。通常情况下,罗马数字中小的数字在大的

2021-10-15 11:20:01 78

原创 leetcode每日一题

回文数给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。示例 1:输入:x = 121输出:true示例 2:输入:x = -121输出:false解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入:x = 10输出:false解释:从右向左读, 为 01 。因此它不是一个回文数。示例

2021-10-14 15:11:35 53

原创 leetcode每日一题

两数之和给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:输入:nums = [3,2,4], tar

2021-10-13 09:57:09 70

原创 leetcode每日一题

复写零给你一个长度固定的整数数组 arr,请你将该数组中出现的每个零都复写一遍,并将其余的元素向右平移。注意:请不要在超过该数组长度的位置写入元素。要求:请对输入的数组 就地 进行上述修改,不要从函数返回任何东西。示例 1:输入:[1,0,2,3,0,4,5,0]输出:null解释:调用函数后,输入的数组将被修改为:[1,0,0,2,3,0,0,4]示例 2:输入:[1,2,3]输出:null解释:调用函数后,输入的数组将被修改为:[1,2,3]提示:1 <= arr.len

2021-10-12 19:20:56 70

原创 浅谈for each循环

关于for each用法for-each循环是通过应该与数组内元素类型相同的变量进行遍历,直接得到数组内从下标为0的位置至最后一个位置的元素的元素值,便于数组内元素的查找,比如在数组内我只需要找到是否有某个元素,而不用返回元素对应的数组下标是,for-each循环是一个不错的选择。语法格式for(声明语句 : 表达式){ 语句}声明语句:声明新的局部变量,该变量的类型必须和元素的类型匹配。其作用域限定再循环语句块内,其值与此时数组元素的值相等。表达式:是要访问的数组名,或者是返回值为数组的

2021-10-11 10:56:06 174

原创 leetcode每日一题

一维数组的动态和给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的动态和。示例 1:输入:nums = [1,2,3,4]输出:[1,3,6,10]解释:动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。示例 2:输入:nums = [1,1,1,1,1]输出:[1,2,3,4,5]解释:动态和计算过程为 [1, 1+1, 1+1+1, 1+1+1+1, 1+1+1+1

2021-10-11 10:34:25 67

原创 Horspool算法

概念horspool算法为字符串匹配算法,这是一个空间换时间的算法,算法把模式和文本的开头字符对齐,从模式的最后一个字符开始比较,如果尝试比较失败了,它把模式向后移。每次尝试过程中比较是从右到左的。我们不会像蛮力法那样移动一格,根据不同情况移动,有以下四种情况如果模式中不存在c(在我们的例子中,c就是字母S),模式安全移动的幅度就是他的全部长度文本:S0 S1 S2……… D……………………模式 B A R E B R移动:

2021-06-16 15:31:12 6872 2

原创 折半查找(C语言)

折半查找法,也称为二分查找法, 二分搜索, 是一种在有序数组中查找某一特定元素的搜索算法.搜索过程中从数组的中间元素开始, 如果中间元素正好是要查找的元素, 则搜索过程结束;如果某一特定元素大于或者小于中间元素, 则在数组大于或小于元素的那一半中查找, 而且跟开始一样从中间元素开始比较. 若某1个步骤中数组为空, 则代表找不到.。这种方法对待查找的列表有两个要求必须采用顺序存储结构必须按关键字大小有序排列分析该源代码是按照从小到大的顺序排列的,若是未排序的数组,可先选择合适的算法排序。源代码

2021-06-03 22:02:50 2659 2

转载 比较计数排序与分布计数排序

比较计数排序针对排序列表中的每一个元素,算出列表中小于该元素的元素个数,并把结果记录在一张表中。这个“个数”指出了该元素在有序列表中的位置。例如一个列表A中有一个元素为10,而小于10的元素个数有5个,那么10应该排在第六个位置上,也就是A[5](下标从0开始)。这个算法称为比较计数排序。下面来个图形象的说明。A[0…5] 62 31 84 96 19 47count[] 0 0 0 0 0 0首先用于计数的数组清零。A[0…5] 62 31 84 96 19 47count[] 3 0 1

2021-06-02 18:13:25 682

原创 图书管理系统

问题描述设计一个计算机管理系统完成图书管理基本业务。每种书的登记内容包括书号、书名、著作者、现存量和库存量;对书号建立索引表(线性表)以提高查找效率;系统主要功能如下:a) 采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;b) 借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量;c) 归还:注销对借阅者的登记,改变该书的现存量。问题分析利用函数式编程完成主要功能,对每种书的登记采用结构体储层,再用链表将其链接。对于借阅

2021-05-30 11:06:31 3532 8

原创 scanf的缓冲区问题

在写图书馆管理系统的时候,利用scanf输入函数时,莫名其妙把自己用死了。这里用简单的代码来描述我遇到的问题#include<stdio.h>int main(){ int a, b; char c; printf("输入两个整数"); scanf("%d %d", &a, &b); printf("输入一个字符"); scanf("%c", &c); printf("%d %d %c\n", a, b, c);}输入的格式为: 1 2

2021-05-30 10:57:55 2282 2

原创 分治法快速排序

快速排序快速排序是按照元素的值对他们进行划分。划分是对给定数组中的元素的重新排列,使得A[s]左边的元素都小于等于A[s],而所有A[s]右边的元素都大于等于A[s]。A[0]…A[s-1] A[s] A[s+1]…A[n-1]建立了一个划分后,A[s]已经位于它在有序数组中的最终位置,接下来我们对A[s]前和A[s]后的子数组分别进行排序(使用同样的方法),注意在快速排序中,算法的主要工作在于划分阶段,而不需要再去合并子问题的解了快速排序的划分算法QuickSort(A[l…r])//用Qu

2021-05-23 22:01:46 4944

原创 分治法合并排序

合并排序合并排序是分治法的应用的一个完美例子。分治法的描述讲解,对于一个需要排序的数组 A[0… n-1],合并排序把他们一分为二:A[0…[n/2]-1] 和 A[0…[n/2]-1] ,并对每个数组递归排序,然后把这两个排好的子数字合并为一个有效数组。分治过程算法MergeSort( 0 , n - 1)//递归调用mergesort来对数组划分//输入:数组排序元素的开始下表和结束下表//输出升序排列的数组if( c < d)mid <–( c + d) /2MergeS

2021-05-18 23:22:08 839

原创 分治法

分治法分治法的基本思想将原始问题划分或归结为规模较小的子问题递归或迭代求解每个子问题将子问题的解综合得到原问题的注:子问题与原始问题完全一样子问题之间可彼此独立的求解递归停止时,子问题可直接求解算法设计思想将原问题归结为规模为 n - 1 的2个子问题继续归约,将问题归结为规模为 n - 2 的4个子问题,继续…当子问题规模为1时,归约过程截止从规模 1 到 n - 1 ,陆续组合两个子问题的解,直到规模为n分治算法的一般性描述Divide(P)if |P| <=

2021-05-18 10:36:50 155 3

原创 蛮力算法求解最近对

蛮力算法最近对问题描述:一个包含n个点的集合中,找出距离最近的两个点。问题分析:假设所考虑的点是以标准的笛卡尔坐标形式( x ,y )给出的,两个点pi = ( xi ,yi )和 pj =( xj,yj )之间的距离是标准的欧几里得距离d( pi , pi )=这里是引用...

2021-05-17 22:17:12 2872 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除