学习笔记

记录JS如何使用广度遍历找到节点的所有父节点

 我们在实际的工作业务场景中经常遇到这样的场景,求取树数据中某个节点的父亲节点以及所有的父亲节点,这样的场景下不建议使用深度遍历,使用广度遍历可以更快找到。1、案例解说...

Java线程状态和关闭线程的正确姿势

目录 1、线程状态及切换 2、正确的结束一个线程  stop()方法——不正确的线程中断方法 回到顶部 1、线程状态及切换   Java中的线程有六种状态,使用线程Thread内的枚举类来实现,如下,我对每个状态都进行了一定的解释。 复制代码   public enum State { /** 表示一个线程还没启用(即未调用start方法)*/ NEW, /** * JVM中执行的线程都是处于这个状态的,但是处于这个状态不一定在JVM中执行, ...

[ASP.NET Core 3框架揭秘] 依赖注入:依赖注入模式

 IoC主要体现了这样一种设计思想:通过将一组通用流程的控制权从应用转移到框架之中以实现对流程的复用,并按照“好莱坞法则”实现应用程序的代码与框架之间的交互。我们可以采用若干设计模式以不同的方式实现IoC,比如我们在前面介绍的模板方法、工厂方法和抽象工厂,接下来我们介绍一种更有价值的IoC模式:依赖注入(DI:Dependency Injection)。...

机器学习中梯度下降法原理及用其解决线性回归问题的C语言实现

本文讲梯度下降(Gradient Descent)前先看看利用梯度下降法进行监督学习(例如分类、回归等)的一般步骤: 1, 定义损失函数(Loss Function) 2, 信息流forward propagation,直到输出端 3, 误差信号back propagation。采用“链式法则”,求损失函数关于参数Θ的梯度 4, 利用最优化方法(比如梯度下降法),进行参数更新 5, 重复步骤2、3、4,直到收敛为止 所谓损失函数,就是一个描述实际输出值和期望输出值之间落差的函数。有多种损失函数的定义方法,常见的有均方误差(error of mean square)、最大似然误差(maximum likelihood estimate)、最大后验概率(maximum posterior probability)、交叉熵损失函数(cross entropy loss)。本文就以均方误差作为损失函数讲讲梯度下降的算法原理以及用其解决线性回归问题。在监督学习下,对于一个样本,它的特征记为x(如果是多个特征,x表示特征向量),期望输出记为t(t为target的缩写),实际输出记为o(o为output的缩写)。两者之间的误差e可用下式表达(为了节省时间,各种算式就用手写的了): ...

小白学 Python(1):开篇

人生苦短,我用 Python 引言 大家好,可能大家都对我比较熟悉了,不熟悉请去面壁(现在熟悉一下也来得及)~ 简单做一个自我介绍,我是极客挖掘机的唯一作者,一位油腻的 Java 程序员【臭鸡蛋什么的先放放,等我打个伞先 啊喂~ 你的自我介绍就一句话啊??? 我乐意,要么你来咬我 虽然我精通有关 Java 的十八般武艺,但是我现在是在写 Python 的连载教程啊,好像没个 P 用 说个你可能不知道事情,今年(2019年)Python 已经高龄 28 岁,是不是吃了一惊,万万没想到,Python 可能比在座的各位年龄都大。可是还是没我大(一脸傲娇)。 ...

java23种设计模式(一)工厂方法模式

 在说工厂方法模式之前,先了解一下简单工厂模式。工厂方法模式其实是在简单工厂上面做了一些增强。简单工厂模式:有一个专门的类来生产其他类的实例,生产的这些实例有一个共同父类。这个跟我们的多态有一点像。...

聊聊 Vue 中 axios 的封装

axios 是 Vue 官方推荐的一个 HTTP 库,用 axios 官方简介来介绍它,就是: Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。 作为一个优秀的 HTTP 库,axios 打败了曾经由 Vue 官方团队维护的 vue-resource,获得了 Vue 作者尤小右的大力推荐,成为了 Vue 项目中 HTTP 库的最佳选择。 虽然,axios 是个优秀的 HTTP 库,但是,直接在项目中使用并不是那么方便,所以,我们需要对其进行一定程度上的配置封装,减少重复代码,方便调用。下面,我们就来聊聊 Vue 中 axios 的封装。 ...

秋招结束了,普普通通,我的三年大学

 前阵子有些读者问我大学期间的学习路线,说他自己现在有点迷茫。说实话,对于学习路线这种文章,一抓一大堆,我也不大喜欢去建议别人究竟该怎么学习,学习顺序之类的。不过对于大学,很多人进入大学的时候,可能都是同一个起点,大学四年过后,却是完全不同的人生轨迹。正好我也想记录下自己从高中进入大学这几年的学习与变化,我的大学经历,可以说是非常普通,没有参加任何竞赛,也没拿过奖学金(当然,国家助学金得拿,哈哈)。也正是因为普普通通,我才要分享,因为我相信你们都看过很多充满各种牛逼的大学经历。...

后端开发有必要学习前端吗,如何入门呢

作为一个服务端开发人员,需要了解并掌握一定的前端技能吗?回答是,当然需要。 我记得刚开始做开发的时候,还不流行前后端分离,那时候也没那么多的前端框架,什么 Vue、React 都还不存在,Angular 才刚刚发布第一代版本不久,但是在国内基本上还没人用。 那时候,大部分应用都还是服务端渲染,比如 Java 的 jsp、.NET 的 aspx、Python 的 Jinja2 等等,剩下的真的需要异步加载的,也是 JQuery 一统天下。 那时候我还投身在 .NET 的怀抱,在微软的一款叫做 SharePoint 的产品上做定制开发,使用的技术就是 .NET。接触前端也就是从那时候开始的,那时候团队里没有人是专门的前端,也没有人是专门的后端,甚至根本就没有前端这一说法。前端的概念也很简单,就是 HTML + CSS + JQuery,掌握这三样,那就是掌握了前端。 ...

开发 Django 博客文章阅读量统计功能

作者:HelloGitHub-追梦人物 文中所涉及的示例代码,已同步更新到 HelloGitHub-Team 仓库 如何精确地记录一篇文章的阅读量是一个比较复杂的问题,不过对于我们的博客来说,没有必要记录的那么精确。因此我们使用一种简单但有效的方式来记录博客文章的阅读量:文章每被浏览一次,则其阅读量 +1,即所谓的文章页面 PV(Page View)数。虽然简单粗暴,但却高效实用。 增加新字段 为了记录文章的浏览量,需要在文章的数据库表中新增一个用于存储阅读量的字段。因此给博客文章的模型新增一个 views 字段: ...

微信开发中使用通用函数处理,以重定向的方式实现用户身份信息的获取并转回原来页面

 在开发微信应用的时候,我们往往需要确认用户的身份,一般公众号唯一区别用户的身份是openid信息,但是这个信息并不是可以直接获取到,需要通过code进行获取,而code的获取则需要用户进行一个授权的处理才能获得,本篇随笔通过结合Session的方式,自动判断用户状态,如果用户首次访问页面,则以重定向的方式实现用户身份信息的获取并转回原来页面。...

Spring Boot2 系列教程(十二)@ControllerAdvice 的三种使用场景

严格来说,本文并不算是 Spring Boot 中的知识点,但是很多学过 SpringMVC 的小伙伴,对于 @ControllerAdvice 却并不熟悉,Spring Boot 和 SpringMVC 一脉相承,@ControllerAdvice 在 Spring Boot 中也有广泛的使用场景,因此本文我们就来聊一聊这个问题。 @ControllerAdvice ,很多初学者可能都没有听说过这个注解,实际上,这是一个非常有用的注解,顾名思义,这是一个增强的 Controller。使用这个 Controller ,可以实现三个方面的功能: ...

.Net TCP探索(一)——TCP服务端开发(同时监听多个客户端请求)

最近在园子里看了大神写的(面试官,不要再问我三次握手和四次挥手),忍不住写段程序来测试一番。 在网上找了很多例子,大多只实现了TCP点对点通讯,但实际应用中,一个服务器端口往往要监听多个客户端发来的消息。 测试工具下载:https://download.csdn.net/download/nbyanghuichao/11872360 本例采用System.Threading实现多线程监听,下面只介绍核心代码,省略了消息提示和错误处理,可以从我的GitHub获取完整代码:https://github.com/FB208/CodeSpace/tree/master/CodeSpace.CSharp/TCP.Client ...
青岛软件培训

可能你正在寻找一家靠谱的IT培训机构,学习一些专业的软件开发技术,找一份得体的工作。恰巧我们就是一家踏踏实实做教育的IT人才培养机构,我们咨询电话是 0532-85025005,如果你确实对IT感兴趣,我们不妨交流一下。

申请免费试听课程