自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

程序员蜗牛

微信搜一搜「蜗牛互联网」,关注这个有趣的程序员,和他一道成长进阶~

  • 博客(253)
  • 资源 (3)
  • 收藏
  • 关注

原创 超详细!JDK 8 下载、安装和环境配置(macOS 和 Windows 版本)

【阿里校招提前批开始啦,2022 届搞 Java 的朋友请联系我内推,多一次面试机会!】前言Java 是一门开源的程序设计语言,它配套的 JDK 同样也是可以免费下载使用的。不过 JDK 的使用对于新手来讲,稍微有一点点门槛,因为涉及到一些特殊的配置,还是有些麻烦的。不过没关系,蜗牛准备了保姆级的超详细教程,帮你快速用上 JDK!!!上一篇文章,学习 Java,使用哪个版本最好,我们选择了 JDK 8,因此本文就以 JDK 8 为例,介绍它的下载、安装和环境配置全过程。JDK 8 下载JDK

2021-03-02 08:45:31 125923 78

原创 万字多图 | UML 入门指南

这里写自定义目录标题一、前言二、从一个示例开始三、什么是 UML?3.1 为什么称为语言3.2 什么是建模3.3 统一的意义在哪四、为什么需要 UML五、UML 的适用场景六、UML 的组成结构6.1 核心元素6.1.1 版型6.1.2 参与者6.1.3 用例6.1.4 边界6.1.5 业务实体6.1.6 包6.1.7 分析类6.1.8 设计类6.1.9 关系6.1.10 组件6.1.11 节点6.2 核心视图6.2.1 结构视图6.2.1.1 用例图6.2.1.2 类图6.2.1.3 对象图6.2.1.4

2021-01-14 01:47:33 880 2

原创 夯实基础系列一:Java 基础总结

前言大学期间接触 Java 的时间也不短了,不论学习还是实习,都让我发觉基础的重要性。互联网发展太快了,各种框架各种技术更新迭代的速度非常快,可能你刚好掌握了一门技术的应用,它却已经走在淘汰的边缘了。而学习新技术总要付出一定的时间成本,那么怎么降低时间成本呢?那就是打好基础,技术再怎么革新,底层的东西也很少会变动,牢固的基础会帮助你在各种新技术的学习中游刃有余,快速上手。因为我选择的方向是后...

2018-09-19 22:58:02 1141

原创 AI 的极限在哪里?它真能“无所不能”吗?

(Wisdom):做出判断和行动,比如 “安排适合孩子玩的游戏,大人也陪一陪”。虽然 AI 近年突飞猛进,甚至完成了许多“曾被认为永远不可能”的任务,(Information):加上上下文,比如 “这些是房间里四个人的年龄”。过去几十年里,几乎所有“AI 永远做不到 XX”的预言,最后都被打脸了。人类负责“想做什么”和“为什么做”,AI 负责“怎么做”和“快速做完”“常识”其实并不“常见”——不同文化、个体对“合理”的理解差异巨大。真正的“智慧”——涉及价值观、道德判断、深层意图——仍是人类的主场。

2026-01-28 08:09:02 216

原创 人工智能简史:从图灵测试到智能体 AI,70 年如何走到今天?

你给它一个目标(比如“帮我订下周去东京的行程”),它会自动调用多个工具——查航班、比酒店、订餐厅、同步日历……全程无需你一步步指挥。从简单的数学规则,到能写诗、画画、编程的聊天机器人,再到未来可能自主行动的“AI 智能体”……这时的 AI,不再是“专家系统”那种僵硬的工具,而是一个能从海量经验中不断进化的“学生”。与 1966 年的 ELIZA 聊天机器人相比,今天的 AI 不再是“脚本回话”,而是。从“蜗牛爬行”到“火箭升空”,AI 的发展曲线正在被生成式技术和智能体范式彻底改写。”的规则让机器推理。

2026-01-27 08:08:36 364

原创 没有合适的时间,只有你可以利用的时间

更重要的是,我养成了写作习惯,这在我之后所有的书籍和文章中都为我服务。通过一次专注于一个概念,并持续应用我所学到的知识,我能够从AI新手转变为能够有效利用AI来提高我的生产力的人。通过改变你的心态并实施这些策略,你可以让你的时间为你服务,稳步实现你的目标,创造一个有目标和成就感的生活。例如,如果你的目标是写一本书,你的系统可能是每天写500字,无论你感觉如何或你有多忙。在我担任谷歌的一个职位中,我们探索了一个名为“48小时挑战”的想法,用于应对复杂问题或启动新项目——这只是另一种形式的黑客马拉松。

2026-01-26 08:06:52 325

原创 一张图看懂 AI、机器学习、深度学习和生成式 AI:它们到底啥关系?

别急,今天我们就用一杯咖啡的时间,轻松理清这四个关键词的关系,顺便看看 AI 是怎么从“实验室冷知识”变成“全民热议话题”的。你可能听过“机器学习”、“深度学习”,还有“生成式 AI”——比如 ChatGPT、Sora、Midjourney……到了 80–90 年代,出现了“专家系统”——比如一个能诊断疾病的程序,靠的是人工写好的成千上万条规则。:ChatGPT 爆火,生成式 AI 瞬间“破圈”——AI 不再是未来,而是现在。神经网络模仿人脑结构,由多层“神经元”组成——层数越多,就叫“越深”。

2026-01-25 09:07:03 257

原创 关注你所能掌控的

这不仅仅是避开“能量吸血鬼”(虽然这也很重要),更是关于战略性地将你的精力投入到与你的价值观和目标一致的领域。有效的目标设定不仅仅是关于结果,而是关于在追求目标的过程中你成为了什么样的人。你脑海中的声音可以成为你最大的盟友,也可能是最坏的敌人。Karademas (2006) 发现有说服力的证据表明,那些对自己的生活有较强控制感的人(如控制圈更大)更有可能体验到积极的情绪和主观幸福感。记住,在每一个时刻,你拥有的力量比你意识到的要多。这包括学会说“不”,清晰地表达你的需求,并尊重自己的限度。

2026-01-24 12:06:40 219

原创 2024,写给自己

现在是 2025 大年初一的零点,看了会窗外漂亮的烟花,躺在沙发上,听着炮声,想写点东西。写给自己的信上次更新还是 2023 年,转眼两年没更新。我发现随着年岁渐长,工作渐忙,表达欲下降了很多。但 2024 年是个特别的年份,值得记录一些重要碎片。2024 年是我冲太岁的一年,我求了太岁符装手机壳,但也发生了很多印象深刻的事情。工作方面,元旦后投入面试准备,过年前面试基本结束,过年后拿到两家目标公...

2025-01-29 11:21:28 316

原创 字节面试高频百题(四)

继续分享面试经常出现的算法题和解法。第一部分见:字节面试高频百题(一)第二部分见:字节面试高频百题(二)第三部分见:字节面试高频百题(三)61、反转数字牛客 57 反转数字https://www.nowcoder.com/practice/1a3de8b83d12437aa05694b90e02f47a?tpId=117思路:注意不能引入 long 类型通过求余倒着计算结果,每加入一个字符要判断下...

2024-04-09 08:06:43 816

原创 字节面试高频百题(三)

继续分享面试经常出现的算法题和解法。第一部分见:字节面试高频百题(一)第二部分见:字节面试高频百题(二)41、判断回文牛客 141 判断是否为回文字符串:https://www.nowcoder.com/practice/e297fdd8e9f543059b0b5f05f3a7f3b2?tpId=117思路:前后指针相向而行publicbooleanjudge(Strings){...

2024-03-25 08:15:11 1251

原创 字节面试高频百题(二)

分享面试经常出现的算法题和解法。第一部分见:字节面试高频百题(一)21、按之字形顺序打印二叉树牛客 14 按之字形顺序打印二叉树https://www.nowcoder.com/practice/91b69814117f4e8097390d107d2efbe0?tpId=117&tqId=37722思路:借助队列的层序遍历+偶数层翻转结果ArrayList<ArrayList<...

2024-03-18 08:15:20 1037

原创 字节面试高频百题(一)

分享面试经常出现的算法题和解法。1、反转链表牛客 78 反转链表:https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca//遍历解法publicstaticListNodereverseList(ListNodehead){if(head==null)returnnull;...

2024-03-04 20:05:09 1242

原创 字母异位词分组 | LeetCode中等算法题

题目描述给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。字母异位词 是由重新排列源单词的所有字母得到的一个新单词。示例 1:“输入: strs = ["eat", "tea", "tan", "ate", "nat", "bat"]输出: [["bat"],["nat","tan"],["ate","eat","tea"]]”示例 2:“输入: strs = [""...

2023-10-23 08:20:55 224

原创 我二十九啦!

不知不觉又到生日了。小时候希望时间快点,想快快长大,见识更大的世界,长大了希望时间慢点,想慢慢感受,珍惜每一个当下。美好的时光总是显得短暂,二十八岁很快过去,迎来了二十打头的最后一年。我一直觉得二十打头的十年,是很多人的黄金十年。这个十年,是好奇心和身体精力最旺盛的阶段,会经历学生到职场人角色的转变,会感受事业上的节节攀升,可能也会完成建立小家庭的人生大事。二十八岁,无疑是我这十年中印象深刻的一年...

2023-10-13 01:35:40 200

原创 2022 年,写给自己

今天是 2023 年的立春,正式由壬寅年进入癸卯年。按照惯例,继续给自己写一封信,来总结 2022 年,以及展望未来(稍微晚了点)。前言开头依然放《原则》作者 瑞·达利欧 的一句话,献给看到这些文字的人。“如果你现在不觉得一年前的自己是个蠢货,那说明你这一年没学到什么东西。——瑞·达利欧”依然采用是上一封信形成的复盘框架,通过【变化】【价值】【认知】三个维度来回顾过去,通过【目标】【风险】【策略...

2023-02-04 20:08:49 614

原创 我二十八啦!

虽然阴差阳错,经常每年过好几个生日,但我还是最认可农历生日。也就是今天,我又涨了一岁。时间啊,过得太快了,上次生日写的寄语《我二十七》,仿佛就在昨天。按照惯例,今天也写点寄语,寄给未来的自己。现在的我,思想上已经不再出现大的变化,大的方向基本定调,后续新的思绪,新的想法,无非是在此基础上添砖加瓦,修修补补。行动上却存在着极大的变数,创造可能性,筛选可能性,消灭可能性,在分叉口和单行道上不断前行。...

2022-09-24 21:35:23 277

原创 成为 B 站阿婆主...

大家好,我是蜗牛哥。对于学习媒介,人们接收能力从高到低依次是现场,视频,音频,文字。我本身也比较喜欢剪辑视频,感觉是挺有创造感有意义感有成就感的一件事,所以最近打算持续在 B 站输出一些技...

2022-03-21 09:04:44 293

原创 如果明天你的职业消失了,该怎么办

大家好,我是蜗牛哥。周末愉快,我们随便聊聊~身为互联网人,一直切身感受着互联网带给我的便利,也吃到了互联网带给我的红利,成为互联网从业者,拿着高薪,稳定的进行职场成长。但从去年开始,一切都...

2022-03-19 20:37:00 360

原创 手写的第一个 Java 应用程序,执行的时候发生了什么

## 前言在上一篇文章 超详细!JDK 8 下载、安装和环境配置(macOS 和 Windows 版本)的介绍下,我们已经搭好 Java 开发环境了,本文我们就实战一下,编一个 Java 应用程序,程序运行的时候能看到 Hello World 的输出。我们同时分析下从编码到运行的整个过程,都发生了什么!编码输出 Hello World我们不借助任何的集成开发环境,就用最原始的手写的方式来编码!计算机上手写的话,就是往记事本上敲代码。Windows 用户可以直接打开记事本,macOS 用户可以在控

2022-03-18 08:30:00 231 4

原创 学习 Java,使用哪个版本最好

前言工欲善其事,必先利其器。我们要学习和使用 Java 语言,就需要搭建好 Java 的开发环境,边学习知识,边实践编码,可以更好的体会 Java 这门语言的精髓。什么是 JDK看过 学习 Java 语言,你必须知道的 Java 简史 的同学应该知道,Java 在诞生时,就为我们配备了 Java 的运行环境和开发工具,而这些,都打包在了 JDK 里面。JDK 全称 Java Development ToolKit,直译一下就是 Java 语言开发工具包。JDK 包含了 开发者工具比如 javac.

2022-03-16 08:30:00 5127 1

原创 学习 Java 语言,你需要知道的 Java 简史

阅读本文你将收获:为什么要学习 JavaJava 这门语言如今是互联网行业炙手可热的编程语言,像阿里、美团这些大厂,技术体系都是建立在 Java 之上。这些大厂又是很多新兴互联网企业的技术风向标,因此 Java 使用范围相当的广,对 Java 程序员的需求量就相当的大。Java 不仅仅是一杯热腾腾的咖啡,还可以是一个靠得住的饭碗!蜗牛从大学开始就接触 Java,工作之后也一直是使用 Java 这门程序设计语言作为编程首选。希望结合自己的知识体系和实践经验,产出 Java 学习的一系列教程,能够帮助

2022-03-14 08:30:00 393 2

原创 有了这个插件,再也不用担心代码不合规范了

大家好,我是蜗牛哥。在阿里待了这么多年,有个软件一直在用,那就是 IDEA,这是宇宙最好用的 Java IDE,没有之一!IDEA 的开放能力做的还不错,可以添加很多插件,让我们的很多开发工作更加便捷。我装的插件其实没几个,但有一款是一直以来在用的,那就是——阿里巴巴代码规约插件。这个插件呢,是阿里巴巴基于《阿里巴巴 Java 开发手册》中的内容,研发出的一套自动化的 IDE 检测插件。目前插件实现了开发手册中的 53 条规则,大部分基于 PMD 实现,其中有 4 条

2022-03-11 08:30:00 1490 7

原创 春招来了,阿里学长和你聊聊必须要关注的几件事儿

前言每年阳春三月,各大互联网公司都会陆续启动春季校园招聘,简称春招。春招主要面向第二年毕业的同学,企业招来做实习生,同时也作为正式员工的储备资源。当然也会覆盖少量当年毕业的同学,这种情况一...

2022-03-10 21:25:16 414

原创 UML 视图常用元素参考

1. 用例图常用元素2. 类图常用元素3. 活动图常用元素4. 状态图常用元素5. 时序图常用元素6. 协作图常用元素

2022-03-10 08:00:00 456

原创 排序算法稳定性

定义排序前后两个相等的数相对位置不变,则稳定稳定性的好处从一个键上排序,然后再从另一个键上排序,第一个键排序的结果可以为第二个键排序所用各排序算法的稳定性堆排序、快速排序、希尔排序、直接选择排序不是稳定的排序算法基数排序、冒泡排序、直接插入排序、折半插入排序、归并排序是稳定的排序算法冒泡排序小的元素往前调或者把大的元素往后调比较是相邻的两个元素比较,交换也发生在这两个元素之间稳定排序算法选择排序每个位置选择当前元素最小的在一趟选择中,如果当前元素比一个元素小,而该

2022-03-09 08:00:00 347

原创 【Java实现经典算法】有理数四则运算

题目描述本题要求编写程序,计算2个有理数的和、差、积、商。输入描述:输入在一行中按照“a1/b1 a2/b2”的格式给出两个分数形式的有理数,其中分子和分母全是整型范围内的整数,负号只可能出现在分子前,分母不为0。输出描述:分别在4行中按照“有理数1 运算符 有理数2 = 结果”的格式顺序输出2个有理数的和、差、积、商。注意输出的每个有理数必须是该有理数的最简形式“k a/b”,其中k是整数部分,a/b是最简分数部分;若为负数,则须加括号;若除法分母为0,则输出“Inf”。题目

2022-03-08 08:00:00 854

原创 【Java实现经典算法】找出数组中重复最多的数

找出数组中重复最多的数public static int getRepeatMost(int a[]){ Map<Integer,Integer> map = new HashMap<Integer,Integer>(); //记录每个元素出现的次数 for(int i = 0;i < a.length;i++){ if(map.containsKey(a[i])){ map.put(a[i], map

2022-03-07 08:00:00 1951 1

原创 校招来袭,我把当年进阿里的学习笔记拿出来分享给大家~

每年春天和秋天,对于第二年毕业,打算从事互联网行业工作的同学,都是特别重要的两个季度。因为各个厂的校园招聘集中在这两个季度,春招主要是实习生招聘,秋招主要是正式招聘。天气...

2022-03-05 20:02:00 387

原创 【Java 实现经典算法】数字黑洞

题目描述给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序然后用第1个数字减第2个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的6174,这个神奇的数字也叫Kaprekar常数。输入描述输入给出一个(0, 10000)区间内的正整数N。输出描述:如果N的4位数字全相等,则在一行内输出“N - N = 0000”否则将计算的每一步在一行内输出,直到6174作为差出现注意每个数字按4位数格式输出。代码实现pa

2022-03-04 08:00:00 537

原创 【Java 实现经典算法】每K个结点反转单链表

题目描述给定一个常数K以及一个单链表L,请编写程序将L中每K个结点反转。例如:给定L为1→2→3→4→5→6,K为3,则输出应该为3→2→1→6→5→4;如果K为4,则输出应该为4→3→2→1→5→6,即最后不到K个元素不反转。思路通过链表长度和K值确定需要反转的结点数每K个反转成新链表,把头保存到List中需要反转的结点数已到并且剩下的结点数不足K个,不反转,即把当前结点存到List中把List中各个链表连接代码package com.liuyong666.pat;impo

2022-03-02 03:00:00 629

原创 【Java 实现经典算法】科学计数法

题目描述科学计数法是科学家用来表示很大或很小的数字的一种方便的方法其满足正则表达式[±][1-9]"."[0-9]+E[±][0-9]+即数字的整数部分只有1位,小数部分至少有1位,该数字及其指数部分的正负号即使对正数也必定明确给出现以科学计数法的格式给出实数A,请编写程序按普通数字表示法输出A,并保证所有有效位都被保留输入描述:每个输入包含1个测试用例,即一个以科学计数法表示的实数A。该数字的存储长度不超过9999字节,且其指数的绝对值不超过9999。输出描述:对每个测试用例,

2022-02-28 08:00:00 2811

原创 剑指Offer之三十-最小的K个数

题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。解法1对数组排序,取前边k个数存到list集合中该解法时间复杂度依赖于排序代码实现public ArrayList<Integer> getLeastNumbers(int [] input, int k) { ArrayList<Integer> list = new ArrayList<Integer>(); i

2022-02-23 08:15:00 158 1

原创 剑指Offer之二十九-数组中出现次数超过一半的数字

题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。解法1使用map,键存元素,值存出现的次数发现有某个元素的次数超过数组长度的一半,则返回该元素代码实现public int moreThanHalfNum(int [] array) { if(array == null || array.length == 0

2022-02-21 08:15:00 212

原创 剑指Offer之二十八-字符串的排列

题目描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。结果请按字母顺序输出。输入描述输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。思路先不考虑是否出现重读字符,要对一个字符进行全排列,可以把第一个字符和后面的字符看成两部分而第一个字符后面的字符又可以看成第一个字符和后面两部分,是一个递归过程只要第一个字符的位置没有到达字符串的末尾

2022-02-20 10:00:00 168

原创 Java 实现经典算法之格雷码

格雷码格雷码(Gray Code)是一个数列集合,每个数使用二进位来表示假设使用 n 位元来表示每个数字,任两个数之间只有一个位元值不同如果要产生n位元的格雷码,那么格雷码的个数为2^nn位元格雷码是基于n-1位元格雷码产生的算法产生 0, 1 两个字符串。在第一步的基础上,每一个字符串都加上0和1,但是每次只能加一个,所以得做两次。这样就变成了 00,01,11,10 (注意对称)。在第二步的基础上,再给每个字符串都加上0和1,同样,每次只能加一个,这样就变成了 000,001,01

2022-02-19 11:46:54 668

原创 剑指Offer之二十七-二叉搜索树与双向链表

二叉树结构class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; }}题目描述输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。思路:由于二叉搜索树的中序遍历就是排序的,如果是构造单链表,

2022-02-18 08:30:00 137

原创 剑指Offer之二十六-复杂链表的复制

题目描述输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点)。复制一个复杂链表结点定义class RandomListNode { int label; RandomListNode next = null; RandomListNode random = null; public RandomListNode(int label){ this.label = label; }}解析遍历链表,每个结点后边复制相同的结

2022-02-17 08:30:00 197

原创 剑指Offer之二十五-二叉树中和为某一值的所有路径

题目描述输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。解析先序遍历,将遍历过的结点放到A集合中当遍历到叶子结点并且和恰好是目标值时,将遍历经过的所有结点放到B集合中,B则是满足题意的一条路径如果遍历到叶子结点和仍然不等于目标值,那么就移除A集合中添加的结点,修改和,切换到右孩子结点重新计算如果没有遍历到叶子结点就从孩子结点中继续寻找这样的路径二叉树定义class TreeNode {

2022-02-16 08:30:00 127

原创 剑指Offer之二十四-二叉搜索树的后序遍历序列

题目描述输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回ture,否则返回false。假设输入的数组的任意两个数字都互不相同。解析找到根结点从头遍历序列,第一个比根结点大的元素为右子树的起点判断右子树是否都比根结点大,若不是返回false,若是,进行下一步分别把左子树和右子树都以上面规则进行判断,若左右子树都能返回true,则整个序列为二叉搜索树的后序遍历序列,返回true代码实现public boolean verifySquenceOfBST(in

2022-02-15 08:30:00 104

Java- JDK8-各平台安装包

适合学习和使用 Java 的朋友

2022-02-13

微信读书助手.crx

微信读书助手浏览器插件,可支持笔记导出 TXT ;章节播放,豆瓣评分,背景设置。解决读完一本书笔记无法导出的问题

2020-12-04

毕业求职简历模板.zip

100 封简历模板,祝各行各业的你都可以找到适合自己的模板,然后填充自己的技能和符合岗位条件的特质,拿到心仪的 offer。

2020-12-04

空空如也

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

TA关注的人

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