- 博客(101)
- 收藏
- 关注
原创 【数据开发】
MyISAM 存储引擎不支持事务、行级锁、多版本并发控制(MVCC)等高级特性,但它具有简单、高效、易于维护等特点,适用于一些对数据完整性要求不高、读写比例较高的应用场景。1、针对快照读(普通 select 语句),是通过 MVCC 方式解决了幻读,因为可重复读隔离级别下,事务执行过程中看到的数据,一直跟这个事务启动时看到的数据是一致的,即使中途有其他事务插入了一条数据,是查询不出来这条数据的,所以就很好了避免幻读问题。是容器化应用运行的基础,提供容器的创建、运行和管理能力。● 功能:组件间通信。
2024-10-21 18:45:46
762
原创 【项目经理面经】
在平时要与客户建立较好的私人关系,节日的祝福、适当的人情往来、帮助其解决一些工作上的难题等,都能增进双方的感情。一个项目从开始到结束,中间必然会产生很多的问题,在客户进行问题咨询时,如果不能够答复的,要马上协调解决。综上所述,项目管理流程涵盖了从启动到收尾的各个阶段,每个阶段都有其特定的任务和关键环节,确保项目能够顺利进行并达成预定目标。如果在项目执行过程中遇到难以解决的问题,要主动与客户进行沟通,寻求客户的帮助。在此阶段,制定详细的项目计划,包括初步设计、硬件详细设计、软件详细设计等。
2024-10-21 12:06:12
384
原创 腾讯云智面经
从MySQL 5.0.3开始,默认的记录格式是COMPACT,它相对于REDUNDANT格式来说,存储效率更高,因为它使用了更少的空间来存储null值和变长字段的长度。在InnoDB中,每条记录实际上都有额外的系统字段,包括DB_TRX_ID(最后修改记录的事务ID)、DB_ROLL_PTR(指向undo log的指针)和DB_ROW_ID(自动生成的行ID,作为隐藏的聚集索引)。默认情况下,所有的表和索引都存储在一个共享的表空间文件(ibdata1)中,但也可以配置为每个表使用独立的表空间文件。
2024-10-09 14:35:59
905
原创 【C语言软开面经】
realloc可以扩大或缩小原来已经malloc的内存空间,realloc是从堆上分配内存的.当扩大一块内存空间时,realloc()试图直接从堆上现存的数据后面的那些字节中获得附加的字节,如果能够满足,关于free释放:内存经过malloc,再realloc后,如果是扩大内存,只需释放realloc的内存,不用再释放malloc的了。如果是缩小内存,则释放malloc的,不释放realloc的,未初始化的变量,是在程序中说明,在运行的初始化阶段,才会真正占用存储空间,它的大小不会影响目标文件的大小。
2024-09-29 09:50:52
779
原创 【海康威视面经】
这样,线程AB执行完毕后,理想中的情况为size为2,elementData下标为0的位置为A,下标为1的位置为B。Spring Boot使用了约定大于配置的理念,通过自动配置和起步依赖简化了项目的搭建和配置过程,使得开发者可以更专注于业务逻辑的开发,而无需过多关注底层的技术细节。-Xms:初始堆内存大小。外部类跟随内部类被引用:内部类持有外部类,这个内部类对象被长期引用了,即使那个外部类实例对象不再被使用,但由于内部类持有外部类的实例对象,这个外部类对象将不会被垃圾回收,这也会造成内存泄漏。
2024-09-19 22:10:48
1406
原创 【腾讯云-面经】
2、在需求、UE、UI评审完成之后,产品、开发、测试之间可以组织需求反串讲,或者进行需求答疑,提前暴露出需求中不严谨或者大家理解不一致的情况,确保需求没问题再展开,避免后期返工。9、上线后,定期组织项目复盘,针对项目中优秀的点进行整理,后期需求中继续保持,项目中有问题的,总结问题,在后续项目或者是用例中进行输出补充,逐步完善。评估测试用例是否对业务产生了积极的影响。redis是NOSQL,即非关系型数据库,也是缓存数据库,即将数据存储在缓存中,缓存的读取速度快,能够大大的提高运行效率,但是保存时间有限。
2024-09-11 17:37:54
760
原创 Python基础
对标记清除中的链表进行优化,将那些可能存在循引用的对象拆分到3个链表,链表称为:1/2/3三代,每代都可以存储对象和阈值,当达到阈值时,就会对相应的链表中的每个对象做一次扫描,除循环引用各自减1并且销毁引用计数器为0的对象。在解释器中程序一开始就默认创建了一些常见的对象放在池中,当程序中用到这些对象时,只需要从池中获取就行,即引用次数+1,而不需要重新一个新的对象,也不需要开辟新的内存。如果函数收到的是一个可变数据类型(比如字典或者列表)的引用,就能修改对象的原始值,相当于通过“传引用”来传递对象。
2024-09-10 20:49:36
1330
原创 Linux常用命令合集
vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和 底线命令模式(Last line mode)ls -l 或 ll 列表查看当前目录下的所有目录和文件(列表查看,显示更多信息)若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。在命令模式下按下:(英文冒号)就进入了底线命令模式。
2024-09-09 20:03:15
683
原创 计算机基础之-TCP 别再问我啦
(比如我发送了1000,2000,3000,然后接收方发送了确认序号1001,2001,3001,如果最后发送方只收到了3001,那么代表3001之前数据已经全部收到了,这是确认序号的含义所确定的)2)如果只有两次握手,第一次握手服务器连接建立好后,第二次向客户端发送请求,而客户端则可以直接把连接丢弃,这样就造成了服务器还在维护着连接,而客户端没有连接,依然可以大量的发送SYN连接请求,也不太可行.4、客户端发送确认报文: 客户端收到服务器的连接断开报文后,会发送一个确认报文作为确认。
2024-09-09 18:37:06
1227
原创 C语言基础
(1)指针赋值字符串是指向一定内存的指针,只不过是指向字符串常量的指针,指针中的数据不能修改。(2)数组赋值字符串是一片char型的数组,可以理解为缓冲区,只不过是赋值为了字符串。
2024-09-05 17:47:54
970
原创 数组排序-一维冒泡-快排-插入-选择
思路:快速排序是冒泡排序的一种改进,主要的算法思想是在待排序的 n 个数据中取第一个数据作为基准值,将所有记录分为 3 组,使第一组中各数据值均小于或等于基准值,第二组做基准值的数琚,第三组中各数据值均大于或等于基准值。思路:选择排序的基本算法是从待排序的区间中经过选择和交换后选出最小的数值存放到 a[0] 中,再从剩余的未排序区间中经过选择和交换后选出最小的数值存放到 a[1] 中,a[1] 中的数字仅大于 a[0],依此类推,即可实现排序。基本思路:每次将相邻两个数比较,将小的(大的)调到前边。
2024-09-05 10:32:41
417
原创 @[TOC](力扣题目-滑动窗口-qsort排序-二分法查找)
解释: 8 个乘积小于 100 的子数组分别为: [10], [5], [2], [6], [10,5], [5,2], [2,6], [5,2,6]。给定一个包含 [0, n] 中 n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。输入:nums = [9,6,4,2,3,5,7,0,1]输入: nums = [1,2,3], k = 0。输入:nums = [1,3,4,2,2]输入:nums = [3,1,3,4,2]输入:nums = [3,3,3,3,3]
2024-09-04 22:30:11
623
1
原创 od机试-日志-TLV解码-BFS广度优先
count等于之前count+第i个数字 如果count大于100 比较之前的max和100-之前晚报的分数(封函数 计算方法 core=0 for循环输入数组j到i 每次的core等于之前的core+这个数字乘i和j的距离)调用Integer.parseInt 将string转int类型。用一个变量count记录当前日志数量,初始为输入的第一个参数。else不大于100 比较max和count-之前晚报的分数。用一个max变量 记录最大积分,初始为输入的第一个参数。放入string[] 按照" "分隔。
2024-09-02 16:23:35
335
原创 【安卓面试】
但不再是在子线程里做这些任务(因为 BroadcastReceiver 的生命周期短),替代的是,如果响应 Intent 广播需要执行一个耗时的动作的话,应用程序应该启动一个 Service。潜在的耗时操作,例如网络或数据库操作,或者高耗时的计算如改变位图尺寸,应该在子线程里(或者以数据库操作为例,通过异步请求的方式)来完成。使用stop()方法强行终止线程,但是这个方法不推荐使用,因为stop()和suspend()、resume()一样,都是作废过期的方法,使用它们可能发生不可预料的结果。
2024-09-02 09:57:36
1639
原创 【百度-APP相关安卓开发】
2.singTop模式(栈顶复用模式):在启动活动时,如果栈顶活动是该活动的实例,则不再创建新的实例,而是复用该实例对象;5.共享内存区:能够很容易控制容量,速度快,但要保持同步,比如一个进程在写的时候,另一个进程要注意读写的问题,相当于线程中的线程安全,当然,共享内存区同样可以用作线程间通讯,不过没这个必要,线程间本来就已经共享了同一进程内的一块内存。redis是NOSQL,即非关系型数据库,也是缓存数据库,即将数据存储在缓存中,缓存的读取速度快,能够大大的提高运行效率,但是保存时间有限。
2024-08-29 12:51:59
872
原创 fatal error RC1004: unexpected end of file found
`“fatal error RC1004: unexpected end of file found1、头文件最后一行需要一个回车,可能是因为通过拷贝粘贴时将回车换行去掉了2、过查找发现是因为在{ }符号缺少造成的3、检查#if与#endif是否个数一致4、注释原因引起1、键盘添加一个回车换行符即可2、添加对应符号3、检查#if与#endif是否个数一致4、在/* 后面和 */前面记得加空格
2022-10-09 10:53:02
1771
原创 c语言中qsort函数的使用
用法: void qsort(void* base,size_t_num,size_t_width,int(__cdecl。C中的qsort()采用的是快排算法,C++的sort()则是改进的快排算法。两者的时间复杂度都是。
2022-08-10 18:07:36
394
原创 C语言基础一
指向指针的指针可以为0,相当于程序吧二进制字符串当作指针但是,*(0)位置在某些情况下真是一个指针。当操作系统访问该地址时,cpu会告诉操作系统该位置不能触碰,出现该内存不能read的报错。saferFree会把野指针赋值为0,为了早点发现运行错误。void*类型指针通用变体类型指针;可以不经转换,赋给其他指针,函数指针除外;malloc返回的就是void*类型。NULL指针是一个标准规定的宏定义;#defineNULL((void*)0)用来表示空指针常量;零指针。...
2022-07-20 14:36:10
540
转载 C语言基础知识
变量的赋值分为两种方式:先声明再赋值声明的同时赋值数据类型存在自动转换的情况.自动转换发生在不同数据类型运算时,在编译的时候自动完成。(数据类型) (表达式)执行过程是:先判断表达式1的值是否为真,如果是真的话执行表达式2;如果是假的话执行表达式3。ifif elsewhiledo-while循环C语言中的do-while循环,一般形式如下:do-while循环语句的语义是:它先执行循环中的执行代码块,然后再判断while中表达式是否为真,如果为真则继续循环;如果为假,则终止循环。因此,do-w
2022-07-10 20:09:53
404
原创 乌班图安装出现无法获取锁解决
乌班图安装出现无法获取前端锁解决出现原因:更新系统,更新一半后突然断电死机,那么这个锁没有解除,下次安装软件,就会出现“无法获得锁 /var/lib/dpkg/XXX - open”的提示根据XXX内容更改后执行操作sudo rm /var/lib/dpkg/lockroot@mo-VirtualBox:/home# sudo apt install golang-goE: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用)E: 无法获取
2021-10-09 16:38:31
892
原创 sql基本试题&深信服笔试
这里写目录标题SQL33 创建一个actor表,包含如下列信息SQL36 创建一个actor_name表SQL37 对first_name创建唯一索引uniq_idx_firstnameSQL38 针对actor表创建视图actor_name_viewSQL40 在last_update后面新增加一列名字为create_date寻找最长重复字符串SQL33 创建一个actor表,包含如下列信息描述创建一个actor表,包含如下列信息列表 类型 是否为NULL 含义actor_id smallint
2021-09-14 21:30:12
178
原创 2021-09-13
这里写目录标题NC3 链表中环的入口结点NC1 大数加法NC40 两个链表生成相加链表NC17 最长回文子串NC45 实现二叉树先序,中序和后序NC41 最长无重复子数组NC105 二分查找-IINC50 链表中的节点每k个一组翻转NC3 链表中环的入口结点描述给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null。//方法1 hashset法public ListNode EntryNodeOfLoop(ListNode pHead) { // 使用set来记录
2021-09-13 23:17:23
229
原创 三数最大乘积&反转字符串&删链表重复&二叉搜索数
这里写目录标题WC140 三个数的最大乘积CM8 翻转子串WC43 删除有序链表中重复的元素-IWC35 不同的二叉搜索树WC140 三个数的最大乘积给定一个长度为 的无序数组 ,包含正数、负数和 0 ,请从中找出 3 个数,使得乘积最大,返回这个乘积。public long solve (int[] A) { // write code here Arrays.sort(A); return Math.max((long)A[0]*A[1]*A[
2021-09-12 23:03:38
142
原创 牛客网SQL必刷题目汇总
牛客网SQL必刷题目汇总更新数据删除重复记录,仅保留id最小SQL34 批量插入数据拼接姓名请你获取薪水第二多的员工的emp_no以及其对应的薪水salarySQL11 获取所有员工当前的manager查找所有员工的last_name和first_name以及对应的dept_name,也包括暂时没有分配部门的员工使用join查询方式找出没有分类的电影id以及名称你能使用子查询的方式找出属于Action分类的所有电影对应的title,description吗批量插入数据更新数据将所有to_date为999
2021-09-11 14:14:55
819
1
原创 重构二叉树 寻找最小看个数字 寻找出现1的个数
这里写目录标题根据前序中序重构二叉树根据前序中序重构二叉树public TreeNode reConstructBinaryTree(int [] pre,int [] in) { if (pre.length == 0 || in.length == 0) { return null; } TreeNode root = new TreeNode(pre[0]); // 在中序中找到前序的根 for
2021-09-10 22:18:45
125
原创 中兴算法面经总结
中兴面经分类的算法SVM决策树神经网络降维PCA聚类K-Means回归算法逻辑回归线性回归决策树回归方程评价指标均方误差(MSE)均方根误差平均绝对误差(MAE)损失函数分类:交叉熵,回归:均方误差(MSE)分类问题为什么最常用交叉熵损失函数不是 mae过拟合欠拟合小样本怎么防止过拟合激活函数sigmoidrelutanh卷积核 超参数 1*1卷积核作用项目socket嵌套字 抓包 拆包分类的算法SVM 核函数 linear (线性) RBF(高斯)ploy(多项式)gammer 超参数 gamm
2021-09-06 23:09:20
986
原创 sql部分练习
编程 剑指offer包含Min函数的栈最大连续数组不用加减乘除做加法构建乘积数组JZ62 二叉搜索树的第k个结点包含Min函数的栈用两个栈实现,N存放入栈出栈真实数据 M存放当前栈中的最小数字pop peek push使用import java.util.Stack;public class Solution { Stack<Integer> N=new Stack<Integer>(); Stack<Integer> M=new St
2021-09-06 21:08:19
285
原创 腾讯2016笔试
在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同, 则称这种编码为格雷码(Gray Code),请编写一个函数,使用递归的方法生成N位的格雷码。给定一个整数n,请返回n位的格雷码,顺序为从0开始。public String[] getCode(int n){ String [] get=null; if(n==0){ get =new String[]{"0","1"}; }else { String
2021-09-05 19:51:24
97
原创 字节测试岗位面试问题汇总(https&死锁&TCP UDP全)
文章目录http和https区别死锁问题TCP和UDP的区别UDPTCPTCP三次握手四次挥手三次握手四次挥手http和https区别笼统说:HTTP是明文传输的,传输过程中容易被拦截、修改或者伪造请求;HTTPS则是在HTTP基础上进行进行了一些信息保护,相比HTTP来说更为安全。http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。两者区别:1. http明文传输,https 有ssl加密传输 http是超文本传输协议,信息是明文传输,https则是具有
2021-08-24 16:08:36
287
原创 测试工具&进程线程协程&三四短&多线程三特&7模型
用过的测试工具:1、禅道: —https://zhuanlan.zhihu.com/p/189899940 (很简单)bug等级 测试用例 预期结果 实际结果 测试环境 测试人员 问题可能出现地方(选)2、postman —https://zhuanlan.zhihu.com/p/76644696使用地点:基于API的接口测试白盒测试:在 JAVA 平台使用 Xunit 系列工具进行测试, Xunit 测试工具是类一级的测试工具对每一个类和该类的方法进行测试。白盒的测试工具:
2021-08-22 23:50:57
394
原创 简单的代码4
回文数字描述在不使用额外的内存空间的条件下判断一个整数是否是回文数字public boolean isPalindrome (int x) { // write code here if(x==0) return true; if(x<0) return false; //负数return false 小于10大于0都return true //知道一些这个数字有几位 String s="";
2021-08-18 16:17:18
84
原创 git提交代码
复制文件夹 cp -r /home/new/ngc_toolkits/ /home/删除 rm -rf /home/XX查看代码版本和修改情况 git log --stat查看当前分支git branch如果什么都没改只是更新一下 git pull如果有改动退出 q exit(退出docker) ctrl+Cdocker stop +IDdocker rm+ID两个链表的第一个公共节点public ListNode FindFirstCommonNode(ListNode pHead1,
2021-08-18 12:37:15
97
原创 简单的代码题3
判断一棵树是不是平衡二叉树平衡二叉树(Balanced Binary Tree),具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。public boolean IsBalanced_Solution(TreeNode root) { if(root==null){ return true; } return depth(root)!=-1; } public
2021-08-17 14:38:48
127
原创 华为机试1
int类型正整数在内存中存储为1的个数import java.util.Scanner;public class Main{ public static void main(String[] args){ //方法1 Scanner in = new Scanner(System.in); int num = in.nextInt(); //读取数字 int n = 0; //计数变量 for(int i=0; i
2021-08-16 11:54:46
123
原创 写代码简单题
冒泡排序冒泡排序算法的运作如下:(从后往前)比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有数字比较。字符串排序public static void main261(String[] arg) {//别人的26 Scanner s = new Scanner(System.in);
2021-08-15 17:01:56
113
转载 MYSQL面经1
MySQL 的事务隔离级别有哪些?分别用于解决什么问题?主要用于解决 脏读、不可重复读、幻读。脏读:一个事务读取到另一个事务还未提交的数据。不可重复读:在一个事务中多次读取同一个数据时,结果出现不一致。幻读:在一个事务中使用相同的 SQL 两次读取,第二次读取到了其他事务新插入的行。不可重复读注重于数据的修改,而幻读注重于数据的插入。MySQL 的可重复读怎么实现的使用 MVCC 实现的(搞个版本号每次然后就只访问前版本的数据)InnoDB 在每行记录后面保存两个隐藏的列,分别保存了数据
2021-08-13 23:41:54
134
转载 java面试必会的常规操作一
面向对象的三个基本特征封装、继承和多态封装:隐藏部分对象的属性和实现细节,对数据的访问只能通过外公开的接口。通过这种方式,对象对内部数据提供了不同级别的保护,以防止程序中无关的部分意外的改变或错误的使用了对象的私有部分继承:让某个类型的对象获得另一个类型的对象的属性的方法。继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。多态:对于同一个行为,不同的子类对象具有不同的表现形式。多态存在的3个条件:1)继承;2)重写;3)父
2021-08-13 17:17:52
230
转载 多线程,线程池
为什么要使用线程池降低资源消耗。不用重复一直创建线程释放线程提高响应速度。(有人等着接任务)增加线程的可管理型。(可以统一管理分配)线程池的核心属性threadFactory(线程工厂):用于创建工作线程的工厂。corePoolSize(核心线程数):当线程池运行的线程少于 corePoolSize 时,将创建一个新线程来处理请求,即使其他工作线程处于空闲状态。workQueue(队列):用于保留任务并移交给工作线程的阻塞队列。maximumPoolSize(最大线程数):线程池允许开启
2021-08-13 14:52:44
81
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人