浅解专题

数据结构——双链表实现和注释浅解

关于双链表的基础部分增删查改的实现和一点理解,写在注释里~  前言              浅记   1. 哨兵位的节点不能被删除,节点的地址也不能发生改变,所以是传一级指针 2. 哨兵位并不存储有效数据,所以它并不是有效节点 3. 双向链表为空时,说明只剩下一个头节点(哨兵位)  List.h #pragma once#include<

浅解Node.js的异步非阻塞I/O模型

今天.NET老师在课堂上吹捧多线程编程,我就想为单线程抱个不平,因为Node的单线程异步非阻塞I/O模型,演绎了单线程编程的神话。 阻塞I/O程序执行过程中必然要进行很多I/O操作,读写文件、输入输出、请求响应等等。I/O操作时最费时的,至少相对于代码来说,在传统的编程模式中,举个例子,你要读一个文件,整个线程都暂停下来,等待文件读完后继续执行。换言之,I/O操作阻塞了代码的执行,极大地降低

java基础 浅解list集合中ArrayList与LinkedList

java 中常用的集合有list,set,map三种,而这个其实也就是接口,而各自有其实现的集合类。注:其所在的位置为java.util 包下面,所以不要导入错了。 本章节又要讲解list这个接口 list 有序集合(也称为序列 )。 该界面的用户可以精确控制列表中每个元素的插入位置。 用户可以通过整数索引(列表中的位置)访问元素,并搜索列表中的元素。 而实现list接口的类有Abstra

Java基础 浅解线程

线程:是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。 进程是程序由开始到结束,按照设计好的程序步骤执行,而线程却不然可以并发执行,比如现在的cup都是多核多线程的,方便我们可以处理多个事情,而是单一的事情。 这个时候就会有两个概念,并发性和并行性。 并发:当有

java基础 浅解1.8新增lambda表达式

lambda是java1.8的一个新特性,可以简化一些代码 lambda 表达式的语法格式如下: (parameters) -> expression或(parameters) ->{ statements; } 理解lambda之前我们首先应该理解一个什么叫做函数式接口。 函数式接口 : 任何接口,如果只包含唯一一个抽象方法,那么就是一个函数式接口。 public inter

Java浅解 值传递和引用传递

在上一篇文章对象中,略微提出了一些值传递和引用传递的概念,感觉需要写出篇简单的理解一下。 首先声明一点,java的传递时值传递,而非引用传递(即指针)。 值传递:值传递是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。引用传递:引用传递是指在调用函数时将实际参数的地址传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。是C语言的一

java 对象浅解

java是一种面向对象的的语言,在Java程序员眼中万物皆对象。而对象就是讲有共同点的事务的共同部分抽离出来,然后定义一个类。而那些共同事务单独进行操作或其他行为就是类的实例。 简单的理解就是现有一个模版或者模子(类),然后通过这个模板而进行创建一个对象。狗就是一个模板,尤其常有的特征毛发,腿,鼻子等属性,而其还有一些行为比如跑,叫等(对象称之为方法)。 而泰迪就是一个对象了,它必然也会有毛发,

浅解Reids持久化

Reids持久化 RDB redis的存储方式: rdb文件都是二进制,很小,里面存的是数据 实现方式 redis-cli链接到redis服务端 使用save命令 注:不推荐 因为save命令是直接写到磁盘里面,速度特别慢,一般都是redis快要关机的时候使用这个命令 使用bgsave 后台保存异步执行 在配置文件里面配置: save 900 1 #900秒内至少有一次修改 就执行bgs

对于JVM的浅解

最近面了几个小而美的互联网公司,都有问到对于JVM了解多少这个问题。学习没好好学,寥寥几句掩饰不了自己的尴尬,所以决定罗列特性专门来了解一下。 JRE是由Java API和JVM组成的。JVM的主要作用是通过Class Loader来加载Java程序,并且按照Java API来执行加载的程序。   虚拟机是通过软件的方式来模拟实现的机器(比如说计算机),它可以像物理机一样运行程序。设计

贝叶斯概率公式浅解

最近在雷达多目标跟踪技术,其中的一大堆概率论方面的知识让我万分头疼,所以稍微梳理一下这些知识。         先说一下蒙特卡洛法。在书上看到这是动目标跟踪的一种性能检测算法,考虑这样一个问题:投3个骰子,扔出8点的概率是多少?很简单是不是,但是其实算出来还是有一点点麻烦(记住,“懒惰”对于一个程序员来时说一个优秀的品质,“懒惰”的人会详尽办法使问题变得容易处理)。那么,我们可不可

C++ STL中sort()原理浅解

为什么会想要写这篇微博,主要发现在算法题中,很多题目都要使用到sort()来对数组进行一个排序,然后对其进行别的操作的时候会简单很多。所以就总结一下sort()的原理,以后有什么问题也可以追根溯源的解决一下,况且排序也是算法中重要的的组成部分之一,所以研究研究有利无害。sort()的使用方法为sort(begin,end),在一般的编程之中可以直接带入容器的begin()和end()函数来对,

vue 浅解watch cli computed props ref vue slot axios nexttick devtools说明使用

Vue.js 是一个强大的前端框架,它提供了很多有用的功能和工具。你提到的这些特性(watch、cli、computed、props、ref、slot、axios、nextTick、devtools)在 Vue 中各自扮演着不同的角色。下面我会逐一解释这些特性如何在 Vue 中使用: 1. watch watch 用于观察和响应 Vue 实例上的数据变化。当需要在数据变化时执行异步或开

Linux内核Input输入子系统浅解

L inux输入 设备 总类 繁杂 ,常见 的包括有 按键 、键盘、触摸屏、 鼠标 、摇杆 等等,他们 本身就是 字符设备 , 而 linux内核将 这些 设备 的 共同性抽象出来 , 简化驱动开发 建立 了一个input子系统。 子系统共分为 三层,如图 1所示 。 图1   input 输入 子系统        驱动 层和 硬件 相关,直接 捕捉和 获取硬件设备 的

QUIC 协议原理浅解

作者:wellsjiang,腾讯 CSIG 后台开发工程师 一 QUIC 是啥? 1.1 什么是 QUIC? QUIC(Quick UDP Internet Connection)是谷歌推出的一套基于 UDP 的传输协议,它实现了 TCP + HTTPS + HTTP/2 的功能,目的是保证可靠性的同时降低网络延迟。因为 UDP 是一个简单传输协议,基于 UDP 可以摆脱 TCP 传输确认、重

JAVA并发| 对线程池的一点浅解

线程池的简介 ThreadPoolExecutor 继承==>AbstractExecutorService 实现===>ExecutorService 继承===>Executor Executors创建线程池的方式 singleThreadExecutor : 单个后台线程 (其缓冲队列是无界的) ExecutorService singleThreadExecutor=Exec

浅解软件工程之高内聚低耦合

定义 高内聚低耦合,是软件工程中的概念,是判断设计好坏的标准,主要是面向对象的设计,主要是看类的内聚性是否高,耦合度是否低。

面试题浅解

这里是笔试题的链接,大家可以下载下来然后对照着看看~ http://pan.baidu.com/s/1kTG99HH (以下使用到的程序均在X86_32位机器下进行的。) 1.题 考查隐式数据类型转换 , C 默认的是将需要自动转换的从低级转换为高级具体情况如下:                          那么什么时候会发生隐式数据类型转换呢 , 主要有

C++ 类和对象浅解

#include<iostream>#include <string.h>using namespace std;struct student{int id; //成员变量或对象char name[64];int age;int score;//...};typedef struct student STU;void modify_stu_name(STU* pstu,co

C++ 内联函数 浅解

#include<iostream>using namespace std;//函数前面有inline关键字修饰,那么这个函数就叫做内联函数//内联函数可以加速程序执行的时间//内联函数一定是代码量极少的函数,且不要有浮点操作;//内联函数的缺点是增加了代码段的数量,耗费更多的内存//典型的以空间换时间的算法inline int get(int a){return a;}int

Linux pthread 线程 浅解

线程 问题 使用fork创建进程以执行新的任务,该方式的代价很高。 解决办法:使用线程什么是线程 线程,是进程内部的一个控制序列。 即使不使用线程,进程内部也有一个执行线程。 类比:创建一个进程,类似于“克隆”一个家庭。 该“家庭”与原来的家庭完全相同 但是新“家庭”和原来的家庭完全独立。 进程包含一个或多个线程。类似与一个家庭,包含一个或多个家庭成员。家庭内的各成员同时做各自

Linux _守护进程 浅解

守护进程 什么是守护进程 守护进程,也称Daemon进程 守护进程,是Linux的后台服务进程。 普通进程和终端的关系: 用户与系统交流的界面,称为“终端”。 当在某个终端上运行某个进程时,该终端就称为该进程的“控制终端”。 当控制终端关闭时,它对应的进程(在该终端上启动的进程)都将被自动关闭。 守护进程和终端的关系: 守护进程不依赖于任何终端。 守护进程启动后,将一直运行到系统关

四种Java引用浅解

最近研究Java Cache实现,发现使用到了软引用(SoftReference),不太理解,查阅了JDK文档、代码以及几篇文章。做个小结,如有错误,欢迎指正。 之所以想学习一下Java的几种引用类型,原因有两个: 理解Java Cache实现、学习Java引用与Java垃圾回收机制的关系 内存资源是有限的,需要合理的利用。Cache不是仅仅HashMap那么简单,Java引用与Java垃

实操事务的四大隔离级别以及浅解三大读(脏读、不可重复读、幻读)现象

文章目录 1.事务的隔离级别2.事务的隔离级别引发的三大读现象(脏读、不可重复读、幻读)3.演示事务(1)演示读未提交(2)演示读已提交(3)演示可重复读关于幻读的理解 (4)演示可串行化 1.事务的隔离级别 首先我们先了解一下什么是事务的隔离级别 下面介绍一下事务的四大隔离级别: 读未提交(READ_UNCOMMITTED):最低隔离级别,允许读到未提交的事务中的数据