- 博客(34)
- 资源 (2)
- 收藏
- 关注
原创 【我眼中的】 - 原型与原型链
1. 一张图函数也是对象,对象的__proto__指向构造函数2. 什么是原型?每个JS对象(null除外)在创建的时候,就会与之关联的另一个对象,这个对象就是原型。3. 什么是原型链?由相互关联的原型组成的链状结构就是原型链。4. prototype每个函数都有一个prototype属性,指向调用该构造函数而创建的实例的原型。prototype是函数才会有的属性5. __proto__每个JS对象(处了null)都具有一个属性__proto__,这个属性会指向该对象的..
2022-04-06 14:02:24 925
原创 快速排序[js版]
介绍快速排序(Quicksort),简称快排。在平均状况下,排序n个项目要 O(nlogn) 次比较。在最坏状况下则需要O(n2)次比较,但这种状况并不常见。快速排序使用分治法策略来把一个序列(list)分为较小和较大的2个子序列,然后递归地排序两个子序列。快速排序步骤为:1.挑选基准值:从数列中挑出一个元素,称为“基准”2.分割:重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准后面(与基准值相等的数可以到任何一边)。在这个分割结束之后,对基准值的排序就已经完成3
2022-02-28 21:45:12 247
原创 环形链表【Leetcode】
题目给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。说明:不允许修改给定的链表。解题思路题目需要解决两个问题:如何判断链表中有环?链表存在环,如何查找到入口?如何判断链表中有环?可以采用快慢指针法,慢指针一次走一步,快指针一次走两步,如果链表中存在环,两指针一定会在环内相遇。链表存在环,如何查找到入口?这表明
2022-02-28 21:42:01 179
原创 斐波那契数列[剑指offer]
题目[简单、动态规划]题解斐波那契数列可以采用递归解法,但是递归法重复计算部分太多,因此选择使用动态规划解答。动态规划的特点是:最优子结构、无后效性、子问题重叠。function Fibonacci(n){ let [a,b] = [0,1]; while(n--){ b=a+b; a=b-a; } return a;}module.exports = { Fibonacci : Fibonacci};文章链接:
2022-02-28 21:40:24 82
原创 二叉搜索树的第k个结点 [ 剑指offer ]
题目题解法一:将二叉搜索树的中序遍历的结果存入数组中,取数组的第k个结果。function KthNode(pRoot, k){ if(!pRoot || k<1) return; return gotoArr(pRoot)[k-1];}let res = [];function gotoArr(root){ // 中序遍历结果存入数组 if(!root) return; gotoArr(root.left); res.push(r
2022-02-20 21:06:26 118
原创 二叉树的深度[剑指offer]
题目[简单、递归]题解树的深度 = max(左子树深度,右子树深度)+1function TreeDepth(pRoot){ //递归出口 if(pRoot===null) return 0; let left = TreeDepth(pRoot.left); let right = TreeDepth(pRoot.right); return 1 + (left>right?left:right);}还有层次遍历的方法,待补充……★转载请
2022-02-20 20:46:42 98
原创 二叉树的镜像[剑指offer]
题目[简单、递归]题解交换二叉树的左右子树function Mirror( pRoot ) { //递归出口 if(pRoot === null){ return pRoot; } else { [pRoot.left,pRoot.right] = [pRoot.right,pRoot.left] } Mirror(pRoot.left); Mirror(pRoot.right); return pRoot
2022-02-20 20:13:34 169
原创 把二叉树打印成多行[剑指offer]
题目[中等、队列]题解解题思路:树的层次遍历+使用两个变量(a.记录当前行的节点数目 b.记录下一行的节点数目)每一行的节点都要放到一个数组内部function Print(pRoot){ let res = []; //最终结果 let queue = [];// 层次遍历queue let temprow = [];// 存放每一层的结点 if(!pRoot) return res; queue.push(pRoot); let ne
2022-02-19 14:42:18 115
原创 比较版本号【leetcode】
比较版本号描述:给你两个版本号 version1 和 version2 ,请你比较它们。版本号由一个或多个修订号组成,各修订号由一个 ‘.’ 连接。每个修订号由 多位数字 组成,可能包含 前导零 。每个版本号至少包含一个字符。修订号从左到右编号,下标从 0 开始,最左边的修订号下标为 0 ,下一个修订号下标为 1 ,以此类推。例如,2.5.33 和 0.1 都是有效的版本号。比较版本号时,请按从左到右的顺序依次比较它们的修订号。比较修订号时,只需比较 忽略任何前导零后的整数值 。也就是说,修订号 1
2022-02-15 21:57:02 278
原创 本地项目上传至GitHub
0.需求说明本地创建项目,github上未存在该项目的repository,现在要将该项目上传至github。1.操作步骤1.1 GitHub中新建仓库注意:GitHub中新建的仓库名称需要与本地的项目文件夹的名称一致1.2本地项目文件夹下运行命令点击“Git Bash Here”,打开git命令行。运行命令:git initgit add .git commit -m 'initproject'(git commit -m '提交信息说明')git remote add
2022-02-15 21:54:26 236
原创 阿里iconfont使用方法
阿里巴巴iconfont的使用方式分为两种:本地使用线上引用iconfont-阿里巴巴矢量图标库0.前期准备使用时先到网站上选中需要使用的图标添加至项目1.本地使用1.下载项目至本地2.解压到项目中3.在页面中引入样式<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=dev
2022-02-14 19:44:30 6822
原创 2:字符串插入
描述有两个字符串str和substr,str的字符个数不超过10,substr的字符个数为3。(字符个数不包括字符串结尾处的’\0’。)将substr插入到str中ASCII码最大的那个字符后面,若有多个最大则只考虑第一个。输入输入包括若干行,每一行为一组测试数据,格式为str substr输出对于每一组测试数据,输出插入之后的字符串。样例输入abcab eee12343 555...
2020-02-18 18:45:56 914
原创 KMP算法之nextval数组
nextval数组实际上是对next数组的进一步改进 模式串 A B A B A A B j 1 2 3 4...
2018-09-20 16:23:42 3430 1
原创 KMP算法理解之next数组
1.next数组的求法(这个是真的有点困难的。。。还好自己又搞明白了)下面以字符串ababaaababaa为例说明一下next[i](i从1开始算)代表着,除去第i个数,在一个字符串里面从第一个数到第(i-1)字符串前缀与后缀最长重复的个数。 Q:何为前缀?A:以aba为例,它的前缀是ab【一个字符串中从第一个字符到(i-1)个字符,ps: i是字符串长度】 以zxc...
2018-09-20 15:03:10 2681
原创 双链表--尾插法构造(c语言)
#include <stdio.h>#include <stdlib.h>// 参数说明:data 存储数据// prior 指向直接前驱的指针// next 指向后继节点的指针typedef struct DNode{ int data; DNode *prior; DNode *next ;}D...
2018-09-09 14:58:09 3372
原创 单链表的操作(c语言)
/*对单链表进行构造(头插法,尾插法),打印,求长度,按值查找,按位查找,插入元素,删除元素*/#include <stdio.h>#include <stdlib.h>//malloc函数的头文件typedef struct Node//创建链表的结构体{ int data; struct Node *next;}Node,...
2018-09-07 22:03:07 211
原创 蓝桥杯3序列求和
入门训练 序列求和 时间限制:1.0s 内存限制:256.0MB 问题描述求1+2+3+...+n的值。输入格式输入包括一个整数n。输出格式输出一行,包括一个整数,表示1+2+3+...+n的值。样例输入4样例输出10样例输入100说明:有一些试题会给出多组样例输入输出以帮助你更好的做题。一般
2018-02-05 14:18:10 149
原创 蓝桥杯2圆的面积
问题描述给定圆的半径r,求圆的面积。输入格式输入包含一个整数r,表示圆的半径。输出格式输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。说明:在本题中,输入是一个整数,但是输出是一个实数。对于实数输出的问题,请一定看清楚实数输出的要求,比如本题中要求保留小数点后7位,则你的程序必须严格的输出7位小数,输出过多或者过少的小数位数都是不行的,都会被认为错误
2018-02-03 11:10:33 196
原创 蓝桥杯1入门训练 Fibonacci数列
问题描述Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。输入格式输入包含一个整数n。输出格式输出一行,包含一个整数,表示Fn除以10007的余数。说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出Fn
2018-02-03 10:54:31 157
转载 hibernate+structs+spring各有什么作用
这是三个相互配合的框架组合,也是目前较为成熟的Java Web开发框架组合。Struts(现在主要用Struts 2了)主要负责Web层的交互,也就是页面和代码间传参、类型转换、输入校验、国际化、文件上传下载这些直接与用户进行网页交互的功能,其核心机制是拦截器,将这些web开发的通用功能给封装了,便于直接利用。Hibernate主要负责数据层的处理,也就是代码与关系数据库(RDBMS)的交互,是一
2017-11-07 17:36:39 923
原创 1002:方便记忆的电话号码
1002:方便记忆的电话号总时间限制: 2000ms 内存限制: 65536kB描述英文字母(除Q和Z外)和电话号码存在着对应关系,如下所示:A,B,C -> 2D,E,F -> 3G,H,I -> 4J,K,L -> 5M,N,O -> 6P,R,S -> 7T,U,V -> 8W,X,Y -
2017-10-31 17:49:37 4129
原创 MFC编写一个建议的文本编辑器
1.使用ANSI字符集2.打开,保存,退出按钮的ID非别为IDopen,IDsave,IDcancel3.为文本编辑框创建变量m_Edit,类别为Value,变量类型为CString。--------------------打开按钮的处理函数void CeditDlg::OnBnClickedopen(){// TODO: 在此添加控件通知处理程序代码int i
2017-09-15 08:58:52 2529
转载 Android Studio如何快速生成get,set,tostring,构造函数
如何快速的set,get或者生成构造函数,生成toString方法。有两种方式:方式一:Code-->Generate方式二:通过快捷键Alt+Insert这时,在弹出的对话框中就可以选择你所需要的对应的函数
2017-08-19 21:35:11 327
原创 ListView控件
xml version="1.0" encoding="utf-8"?>LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.and
2017-08-19 21:07:39 168
原创 点击按钮调用系统浏览器打开百度首页
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button1 = (Button) findViewById(R.id.button_1);
2017-08-18 21:17:10 713
原创 使用intent在活动之间穿梭——使用隐式Intent
1.在AndroidManifest.xml中intent-filter> action android:name="com.sdau.windseeker.activitytest.ACTION_START"/> category android:name="android.intent.category.DEFAULT"/>intent-filter>标签中指明了当前
2017-08-18 20:45:22 404
原创 使用intent在活动之间穿梭——使用显式Intent
1.创建两个活动,两个.xml文件代码如下:xml version="1.0" encoding="utf-8"?>android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.andr
2017-08-18 20:04:36 336
原创 活动中使用Menu
1.创建菜单文件 New ->Menu resource file2.在创建菜单文件(**.xml)文件中创建标签 标签就是用来创建某一个具体的菜单,再通过android:id给菜单项制定唯一的标识符,通过android:title给菜单项命名例如:xml version="1.0" encoding="utf-8"?>menu xmlns:android="http://sch
2017-08-18 11:17:47 239
原创 活动中的 findViewById()方法总结以及Button按钮的使用
1.活动中,可以通过 findViewById()方法获取到布局文件中的元素,例如, findViewById(R.id.button_1)2.findViewById()返回的是一个View对象,使用时一般需要进行类型的强制转换3.Button按钮一般会建立一个setOnClickListener()方法的监听器,点击按钮时执行Onclick()方法4.若要弹出提示,一般在Oncli
2017-08-18 10:34:17 9253
原创 fill_parent、wrap_content和match_parent的区别
1)fill_parent设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间。类似于强制平铺,填满整个屏幕。2) wrap_content设置一个视图的尺寸为wrap_content将强制性地使视图扩展以显示全部内容。大小由文本或者图像决定。3)match_parent Android2
2017-08-16 22:21:45 512
转载 Android studio导入Eclipse项目,以及一些错误的解决
Android studio导入Eclipse开发的项目步骤如下:1.如果已经打开android studio的话就选择你已打开的项目,关闭然后导入2.开始导入导入完成。2
2017-08-07 09:30:46 343
转载 android studio 中去除标题栏(全屏显示)
㈠ ⒈ mainifests中设置: android:theme="@style/AppTheme"(即默认设置). ⒉ values->styles.xml中设置: style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar".㈡ values->styles.xml中:
2017-08-01 17:08:30 1240
MFC简易文本编辑器
2017-09-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人