- 博客(36)
- 收藏
- 关注
原创 面试常考简单操作
思考Comparator和Comparable的区别实现Comparator接口实现。int age;int score;@Override= o.age) {// 法1@Overrideif(o1.age!});// 法2if(o1.age!});// 法3(用Comparable实现默认排序)});
2025-04-02 15:56:26
591
原创 java注解原理
Override 本质上是一个空注解,但编译器根据它做了额外的检查。注解可以提供元数据,告诉编译器或工具该如何处理被标记的元素。不同注解根据其保留策略(RetentionPolicy),可以在源码、编译期或运行时发挥作用。在运行时,通过反射可以读取带有RUNTIME策略的注解。既然注解是一个接口,那我们在使用时,是怎么实现它内部的方法的ChatGPT 说:这是个非常棒的问题!注解在Java中本质上是一个特殊类型的接口。
2024-10-17 11:12:24
827
1
原创 【Java SE基础回顾】看这篇就够了!
自定义异常可以继承Exception(受检异常)或(非受检异常)1.自定义异常类,继承自 Exception// 定义一个方法,抛出自定义异常public static void validateAge(int age) throws InvalidAgeException { // 注意!!这里throws不能省略// 当年龄小于 18 时,抛出自定义异常} else {try {// 调用 validateAge 方法,传入一个无效的年龄// 捕获并处理自定义异常2.使用。
2024-10-09 21:02:29
784
原创 java Map中get方法爆错NullPointerException
得到的是一个null值。Java 会尝试将返回的 null 自动拆箱为 int,这会导致。运行出错,看代码很明显是get到一个不存在map的值,但为什么报的是。,因为 null 不能被转换为 int。
2024-10-08 11:06:53
386
原创 leetcode老问题新发现(更新ing)
之前用C++把代码随想录写的差不多了,近期在学Java,写着重写一遍题目,在复习算法的同时,顺便掌握一下Java的语法。本贴打算作为一个长期贴,并且每道题只做提示,不会发详细的题解。
2024-09-27 16:58:47
371
原创 从零开始学习TinyWebServer
写在前面项目参考:https://github.com/qinguoyi/TinyWebServer写作框架/图参考:https://blog.youkuaiyun.com/qq_52313711/article/details/136356042?spm=1001.2014.3001.5502原本计划是,先将项目代码大概看一遍,然后再着手实现一下。但后面准备不搞C++了,项目看一半又很难受,于是想着把代码看完,项目懂个六七成就够了,剩下部分不是看看就能理解的,如果后面有时间(应该没有了),就着手实现一次,并且
2024-09-21 14:51:40
2068
2
原创 vscode运行cjson(自用)
看起来是编译生成exe的时候链接出了问题,但是直接用task.json生成可执行文件时,是成功的。所以并不是那个地方的错,经过几个小时不断试错,发现将tasks.json中的label改简单一点就行了(launch.json也要做对应修改)每次运行都需要先生成可执行文件,然后再通过命令行运行,而且运行的终端还是在vscode里面,这显然有些不方便,于是我们可以引入launch.json文件,方便我们运行程序。然后,选中要执行的文件,按下图操作,选择到配置任务。并进行以下修改(左边为原图,右边为修改后的图)
2024-04-25 22:41:23
720
原创 服务器部署dgl环境
如果这一步需要安装很久(>15min),那估计是pytorch版本不匹配,他自动给你重新安装了,即失败了,重新选择高点的torch版本。去dgl官网看具体版本,根据具体cuda版本选择服务器实例(最好选择pytorch高点的版本,低版本好像dgl不太支持)报错:ModuleNotFoundError: No module named ‘munkres’报错:No module named ‘matplotlib’解决方案:pip install matplotlib。1.先运行dgl官网上的那坨东西。
2024-04-08 17:01:17
362
1
原创 pip报错 :Could not find a version that satisfies the requirement nbconvert (from versions: none)
看了别的地方说要换源,换了好几个国内的源发现都报错,发现是我梯子没关,纯纯笨比了。
2023-10-24 14:19:54
269
原创 ImportError: DLL load failed while importing _arpack: 找不到指定的程序。
(sklearn是Scipy的扩展,建立在Numpy和matplolib库的基础上。基础教程》的代码:https://github.com/amueller/introduction_to_ml_with_python。进行以上操作后,代码from preamble import *还是报错,不过出现的问题并不是上面的版本问题,而是。该报错指向的是sklearn库函数的问题,但是我将该sklearn删掉后重装,仍然出现问题。作者指出该数据集有伦理问题,所以在新版本的库函数不再支持,还贴心给出替换的方法。
2023-08-28 16:12:42
1767
原创 23考研初试回顾(华南师范大学计算机专硕)
这篇文章不能称得上所谓的经验贴,只是有感而发。在吸取一些经验教训时,希望大家能结合自身实际辩证地看待。
2023-05-30 18:34:10
1636
6
原创 数组中重复的数字(哈希表和原地交换)
题目来源法一:哈希表C++中的unordered_mapclass Solution {public: int findRepeatNumber(vector<int>& nums) { unordered_map<int,int> umap; for(int i:nums){ if(umap[i]==0)umap[i]++; else return i; }
2023-01-09 23:09:08
101
原创 104. 利用后序遍历(非递归)求二叉树的最大深度
利用后序遍历的非递归算法后序遍历在出入栈是,是先将左孩子进栈,处理完毕后出栈,再将右孩子入栈,最后再处理根结点。所以在非递归的后序遍历过程中,栈的深度即为当前的深度。利用这个特性,我们可以编写出一下...
2022-04-23 20:43:04
1844
原创 318. 最大单词长度乘积(C++)和map遍历方法auto [mask1,_]
318. 最大单词长度乘积给定一个字符串数组 words,找到 length(word[i]) * length(word[j]) 的最大值,并且这两个单词不含有公共字母。你可以认为每个单词只包含小写字母。如果不存在这样的两个单词,返回 0。示例 1:输入: [“abcw”,“baz”,“foo”,“bar”,“xtfn”,“abcdef”]输出: 16解释: 这两个单词为 “abcw”, “xtfn”。示例 2:输入: [“a”,“ab”,“abc”,“d”,“cd”,“bcd”,“a
2021-11-21 14:10:42
256
原创 逻辑回归--乳腺癌数据集
逻辑回归–乳腺癌数据集一直以为西瓜书中没有逻辑回归这一内容,原来是放在了线性模型这一章节。里面称之为“对数几率回归”。原文给出的理由是:有文献译为“逻辑回归”,但中文“逻辑”与logistic 和 logit 的含义相去甚远,因此本书意译为“对数几率回归”,简称”对率回归“。实验要求实验要求:使用乳腺癌数据集作为实验数据集(load_breast_cancer),加载并划分数据集使用sklearn的逻辑回归分类器进行模型训练,并进行至少3个参数调参(sklearn的线性模型的API文档:
2021-11-07 15:44:32
7521
1
原创 27. 移除元素(双指针做法以及对边界值的思考)
27. 移除元素一开始的解法,使用sort求解,没啥特点class Solution {public: int removeElement(vector<int>& nums, int val) { int size = nums.size(); for(int &it:nums){ if(it==val){ it=INT_MAX; size--;
2021-11-07 14:40:25
101
原创 泰波那契数以及对long/int范围的思考
1137. 第 N 个泰波那契数递归(超时)class Solution {public: int tribonacci(int n) { switch(n){ case 0: return 0; case 1: return 1; case 2: return 1; default:
2021-11-03 12:02:32
133
原创 斐波那契数的n中解法
509. 斐波那契数递归很快啊!看到这个名字直接递归处理class Solution {public: int fib(int n) { if(n==0)return 0; if(n==1)return 1; return fib(n-1)+fib(n-2); }};其实仔细发现,这里的处理是非常低效的,会重复计算,如下图,可以看到重复计算了f(18)、f(17)等数据。这是动态规划问题的第一个性质:重叠子问题。时间复杂度:为
2021-11-02 22:13:18
251
原创 1944. 队列中可以看到的人数(单调栈)
1944. 队列中可以看到的人数第一次尝试困难的题目,不过看评论区说好像配不上困难这个级别,但我做不出来????毫无技巧的暴力解法(超时)class Solution {public: vector<int> canSeePersonsCount(vector<int>& heights) { vector<int> result; int num=0; //看到的人 for(int i=0;i&l
2021-10-30 19:57:59
223
原创 739. 每日温度(C++)单调栈的应用
739. 每日温度无语了相对简单我还是不会。日常超时自己写的暴力算法(超时)class Solution {public: vector<int> dailyTemperatures(vector<int>& temperatures) { vector<int> result; int i,j; for(i=0;i<temperatures.size();i++){
2021-10-23 00:21:14
362
原创 453. 最小操作次数使数组元素相等
453. 最小操作次数使数组元素相等简单题?对不起,是我菜了。给你一个长度为 n 的整数数组,每次操作将会使 n - 1 个元素增加 1 。返回让数组所有元素相等的最小操作次数。示例 1:输入:nums = [1,2,3]输出:3解释:只需要3次操作(注意每次操作会增加两个元素的值):[1,2,3] => [2,3,3] => [3,4,3] => [4,4,4]示例 2:输入:nums = [1,1,1]输出:0提示:n == nums.l
2021-10-20 16:34:12
385
原创 791.自定义字符串排序(C++)
791.自定义字符串排序字符串S和 T 只包含小写字符。在S中,所有字符只会出现一次。S 已经根据某种规则进行了排序。我们要根据S中的字符顺序对T进行排序。更具体地说,如果S中x在y之前出现,那么返回的字符串中x也应出现在y之前。返回任意一种符合条件的字符串T。示例:输入:S = “cba”T = “abcd”输出: “cbad”解释:S中出现了字符 “a”, “b”, “c”, 所以 “a”, “b”, “c” 的顺序应该是 “c”, “b”, “a”.由于 “d” 没有在S中出现
2021-10-19 20:49:00
717
1
原创 38. 外观数列(C++)
38. 外观数列给定一个正整数 n ,输出外观数列的第 n 项。「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。你可以将其视作是由递归公式定义的数字字符串序列:countAndSay(1) = “1”countAndSay(n) 是对 countAndSay(n-1) 的描述,然后转换成另一个数字字符串。到这里有点不知所云,看下面例子就知道题目具体要求了。示例1:111211211111221第一项是数字 1 描述前一
2021-10-16 16:13:57
1002
原创 441.排列硬币(C++)
441.排列硬币你总共有 n 枚硬币,并计划将它们按阶梯状排列。对于一个由 k 行组成的阶梯,其第 i 行必须正好有 i 枚硬币。阶梯的最后一行 可能 是不完整的。给你一个数字 n ,计算并返回可形成 完整阶梯行 的总行数。输入:n = 5输出:2解释:因为第三行不完整,所以返回 2 。输入:n = 8输出:3解释:因为第四行不完整,所以返回 3 。提示:1 <= n <= 231 - 1递归求解拿到题目很快啊!直接就利用数学公式求解,发现忘了求根公式这种
2021-10-10 21:28:15
402
原创 面试题 16.02. 单词频率(C++)
面试题 16.02. 单词频率(C++)设计一个方法,找出任意指定单词在一本书中的出现频率。你的实现应该支持如下操作:WordsFrequency(book)构造函数,参数为字符串数组构成的一本书get(word)查询指定单词在书中出现的频率示例:WordsFrequency wordsFrequency = new WordsFrequency({“i”, “have”, “an”, “apple”, “he”, “have”, “a”, “pen”});wordsFrequency.ge
2021-10-09 14:31:46
286
原创 两数相加(C++)
两数相等(C++)给你两个非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例 2:输入:l1 = [0], l2 = [0]输出:[0]示例 3:输入:l1 = [9,9,9,9,9,9
2021-10-08 14:23:27
2516
原创 线性回归--波士顿房价
线性回归–波士顿房价前几天,机器学习老师布置了个作业。实验要求编写一个线性回归分类器(以梯度下降更新参数;以均方误差计算cost function;补充计算accuracy的函数)使用波士顿房价数据集作为实验数据集(load_boston;数据集相关信息)分别使用自己编写的线性回归分类器、sklearn的线性回归分类器训练模型(sklearn的线性模型的API文档)使用多项式回归优化模型实验内容首先,我们需要导入相关的库(由于在pycharm可以很方便的导入需要的类,所以这方面不重要)
2021-09-28 23:37:40
1972
原创 小案例--利用梯度下降改善网络
参考《深度学习与图像识别原理与实践》一书P95,代码有所改动小案例–梯度下降输入一个X(人工识别这个X的图像为狗),让机器自动判断该图像的分类,其中,图像为三分类(类别分别为鸡、猫、狗),真实标签分类为y=[0,0,1](标签已经转化为one-hot类型,代表是狗)。假设我们有一个数据集X,X赋值为[[0.6,0.9]](已经将肉眼识别的狗的图片转化为矩阵, 从代码中可以看到X的形状为(1,2),代表的是1行2列首先,根据题意,我们有X = np.array([0.6,0.9])y = np..
2021-07-27 22:31:19
3163
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人