- 博客(34)
- 资源 (10)
- 收藏
- 关注
原创 【算法练习】动态规划
不同的二叉搜索树给定一个整数 n,求以1 ... n为节点组成的二叉搜索树有多少种?示例:输入: 3输出: 5解释:给定 n = 3, 一共有 5 种不同结构的二叉搜索树:卡特兰数设n个节点时,不同的二叉搜索树共有为G(n),F(i,n),根节点为i的二叉搜索树,其左子树的节点个数为i-1,右子树的节点个数为n-i,所以有G(n)=∑i=1nF(i,n)=∑i=1nG(i−1)+G(n−i)G(n)=\displaystyle\sum_{i=1}^nF(i,n)=\display
2020-06-29 22:47:20 183
原创 【算法练习】深度优先搜索
检查网格中是否存在有效路径给你一个 m x n 的网格 grid。网格里的每个单元都代表一条街道。grid[i][j] 的街道可以是:1 表示连接左单元格和右单元格的街道。2 表示连接上单元格和下单元格的街道。3 表示连接左单元格和下单元格的街道。4 表示连接右单元格和下单元格的街道。5 表示连接左单元格和上单元格的街道。6 表示连接右单元格和上单元格的街道。你最开始从左上角的单元格 (0,0) 开始出发,网格中的「有效路径」是指从左上方的单元格 (0,0) 开始、一直到右下方的(m-1,n
2020-06-28 15:55:22 344
原创 webpack之 tree shaking
tree shaking 是干嘛直译是摇树,呃? 干嘛要 摇树?webpack中文网是这样做比喻的。一棵树上,有生命力强劲的绿叶,也有等待凋落的枯叶,摇动树,枯叶方可落地,整棵树看起来才春意盎然。一个应用程序就好比一颗树,用到的代码就是绿叶,没有用到的 徒增包体积 的代码就是枯叶,因此 有必要 把没用的代码排除出最终的包,这样就可以缩小包体积了。而 把将用不到的代码排除出最终的包,就需要 tree shaking。那问题来了,怎么 shaking?怎么shaking要shaking,有个前提
2020-06-28 10:19:33 894
原创 【css】负值margin的应用
<body><span id='s0' class='s'>hello world hello world</span><span>have a nice day</span><br><br><span id='s1' class='s'>hello world hello world</span><span>have a nice day</span><br>
2020-06-23 15:02:20 261
原创 float与overflow
<body> <img src="./imgs/doraemon.gif"> <div>哆啦A梦(日语:ドラえもん),旧译为机器猫,是藤子·F·不二雄的漫画作品《哆啦A梦》中登场的猫型机器人,本作的主人公。名字的意思是铜锣(ドラ)卫门(えもん)。 哆啦A梦肚子上拥有四次元口袋,这个口袋直接通往四次元空间,再多的东西也放得下。害怕老鼠。平时的职责是照顾野比大雄。</div></body> img{
2020-06-22 15:32:00 655
原创 异步之事件
添加事件处理程序有三种方式。html指定事件处理程序<body onclick="sayHi()"> hello world <script> function sayHi(){ console.log('hi~'); } </script></body>DOM0级事件处理程序<body> hello world <scrip
2020-06-22 09:48:09 263
原创 【算法练习】二叉树
二叉树的实现 function TreeNode(val){ this.val = val; this.left = this.right = null; } function BT(){ this.root = null; } BT.prototype.insertNode = function(val){ if(this.roo
2020-06-20 22:38:07 241
原创 【React】包裹多个JSX元素
Fragments不论function组件,还是class组件的render函数,都必须返回一个JSX元素,也只能返回一个JSX元素。返回多个JSX元素是不合法的,这时可以用一个外层的标签把所有内容包裹起来再返回。要返回多个JSX时,我常用<div>来包裹,然而这并非我所愿。因为额外的<div>在整个html结构中是没有任何意义的,它只会让结构变得臃肿。好了,遇到了一个好用的东西—Fragments。<body> <div id="root">
2020-06-19 12:18:23 1232
原创 【算法练习】链表
随机读取,数组完美,链表不行;插入或删除,链表很在行,数组很笨。奇偶链表给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。示例 2:输入: 2->1->3->5->6->4->7->NULL输出: 2->3->6->7->1->5->4->NULLfunction ListNode(val, next) { thi
2020-06-17 22:02:57 187
原创 float与clear
floatfloat:left或float:right,让元素浮动。 <ul> <li></li> <li></li> <li></li> <li></li> <li></li> </ul> li{ list-style:non
2020-06-16 16:12:35 338
原创 java里的数据结构
数组初始化、遍历数组的常用方式第一种 double[] a = new double[10]; for(int i=0;i<a.length;i++) { a[i] = Math.floor(Math.random()*100+1); System.out.println(a[i]); }第二种 int[] b = {1,2,3}; for(int idx:b) { System.out.println(idx); }第三种 int[] c
2020-06-15 21:09:14 179
原创 Math.random()生成随机数
0 ≤ Math.random() < 10 ≤ Math.random()*(max-min+1) < max-min+1min ≤ Math.random()*(max-min+1)+min < max+1因此,Math.random()*(max-min+1)+min可以生成范围在闭区间[min,max]内的随机数。比如,Math.random()*10+1生成[1,10]范围的随机数、Math.random()*100+1生成[1,100]范围的随机数。...
2020-06-15 20:54:39 779
原创 常用的DOM操作
React、Vue等框架流行后,现在开发人员亲自操作DOM的“机会”不多了,因为“神仙”框架们已经帮我们做的很好了。而今,大多数时候我们更加专注于业务数据,不再过多关心该怎么操作DOM来更新视图。倘若你要读源码,掌握DOM操作是必须的 ,这是基础的基础,本次记录作巩固用。...
2020-06-15 16:10:50 168
原创 【React】提取组件与状态提升
数据一致性唯一数据源state组件将共享的状态放到最近的共同的父组件中管理,叫做状态提升。代码上有两点变化:const {temperature}=this.state; >>const {temperature}=this.props;this.setState({temperature:e.target.value})>>this.onTemperatureChange(e.target.value)这时,temperature不再由组件内部状态维护,组件失去控制
2020-06-15 16:01:00 323
原创 表单字段们
文本输入框<input type="text" name='name'>提交表单生成提交按钮生成提交按钮,有以下三种方式。第一种:input[type='submit']<input type="submit" value='提交'>第二种:button[type='submit']<button type='submit'>提交</button>第三种:input[type='image']<input type=
2020-06-12 17:43:10 341
原创 表单Demo
表单Demo,验证用。目录结构mkdir democd demonpm init -ynpm install --save express body-parsertype nul>server.jsmkdir srccd src type nul>index.htmlcd ..mkdir datacd datatype nul>user.jsonusers.json{ "tom": { "id": 1, "
2020-06-11 18:39:19 205 1
原创 JSON对象及其方法
JSON字符串JSON字符串 当然也是字符串,不过它有一点点特殊。'{"a":"hello","b":"world"}',喏,这就是一个 JSON字符串。在写一个json 文件时,如果 字符串 不带引号或带单引号,你的智慧编辑器就会提示你:“一定要用双引号”。是的,这就是 JSON字符串 的特殊之处。JSON对象JSON是javascript的内置对象,就像Date、Math一样。JSON这个对象对外提供了两个静态方法,分别是parse和stringify。日常开发中,JSON.stri
2020-06-11 16:57:47 833
原创 fs
异步读文件 fs.readFile(path,encoding,callback)在win7系统下,创建如下目录。mkdir d1cd d1type nul>index.jstype nul>math.js//math.jsconst add = (x,y) => x+y;const sub = (x,y) => x=y;const mul = (x,y) => x*y;const div = (x,y) => x/y;const sum .
2020-06-11 14:52:21 141
原创 【无障碍访问】label的使用
将label标签与表单字段关联,这样,点击label标签,表单字段会自动获得焦点。要关联,有两种方式。将表单字段嵌套在label标签里input[type='text']标签嵌套在label标签里<form> <label>名字: <input type="text" name='name'></label> <input type="submit" value='提交'></form>label标
2020-06-11 09:27:01 705
原创 【算法练习】双指针
文章目录两数之和遍历嵌套用Map作缓存三数之和遍历嵌套两数之和给定一个整数数组 nums 和一个目标值target,在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。遍历嵌套function twoSum(nums,target){ var len = nums.length; for(var i=0;i<len;i++){ for(var j=i+1;j<len;j++){ if(nums[i]+nums[j] ===
2020-06-09 22:17:38 252
原创 浮动实现一侧定宽两栏自适应布局
浮动实现一侧定宽两栏自适应布局。例1:图片在左,文本在右 img{ float:left; } div{ margin-left:440px; }<body> <img src="./imgs/doraemon.gif"> <div>哆啦A梦(日语:ドラえもん),旧译为机器猫,是藤子·F·不二雄的漫画作品《哆啦A梦》中登场的猫型机器人,本作的主人公。名字的意思是铜锣(ドラ)卫门(え
2020-06-09 11:52:48 531
原创 【React】列表组件与key
列表组件为什么需要keykey是给React看的,不是给组件看的key应该放哪儿例1:key在<li></li>上import React from "react";import ReactDOM from "react-dom";const numbers = [1,2,3,4,5];function NumberList(props){ const listItems = props.numbers.map(number =>
2020-06-09 11:46:38 247
原创 【React】props实现父子组件间通信
import React from "react";import ReactDOM from "react-dom";const element = <h1>hello world</h1>;ReactDOM.render(element,document.querySelector('#root'));ReactDOM.render把React元素element渲染到了根DOM上div#root。React元素一旦渲染成了DOM元素,就不可更改了。呃,如果想更新,该怎么
2020-06-04 16:42:48 251
原创 改变 数据属性的特性
数据属性的特性我们了解过 数据属性的特性:configurable、writable、enumerable和value。可以使用Object.defineProperty()或者Object.defineProperties()来修改这些特性。修改 数据属性的特性实际上,要修改configurable、writable,更常用的是Object.seal()或者Object.freee()。对一个普通对象时,我们可以对其属性进行 增、删、改操作。可 增(可扩展),前提是 该对象 isExt
2020-06-04 15:10:08 261
原创 字符串
基本类型与包装类型理论上讲,str是 基本类型数据,不是对象,它哪来的slice 方法?事实上,在访问 基本类型数据 时,后台会创建一个对应的包装类型的对象,这样,就可以调用一些方法来操作 基本类型数据。所以,var copyStr = str.slice(0)相当于,相等 or 不相等immutable性期望改成 'dad',but still 'bad',无法直接修改其中的字符,为什么??immutable!!之前,我们了解过 数据属性的特性:value、writable
2020-06-04 12:32:37 148
原创 查找
二分查找前提是,数组已经排好序function binarySearch(arr,target){ var left = 0; var right = arr.length-1; while(left <= right){ var mid = Math.floor((left+right)/2); if(target === arr[mid]){ return mid; }else if(targe.
2020-06-03 17:19:03 284
原创 排序
冒泡排序var arr = [3,5,1,7,9];function bubbleSort(arr){ var len = arr.length; for(var i=0;i<len-1;i++){ for(var j=0;j<len-1-i;j++){ if(arr[j]>arr[j+1]){ var temp = arr[j+1]; arr[j+1] = a.
2020-06-01 21:11:47 214
原创 React的事件处理
一个简单的例子//Button.jsimport React from "react";import ReactDOM from "react-dom";class Button extends React.Component{ handleClick(e){ console.log(e); console.log("hello world"); } render(){ return <button onClick={t
2020-06-01 14:56:46 234
原创 事件处理程序的参数与传参
先给个例子。访问事件对象<body> <button onclick="sayHi()">sayHi</button> <button class="btn">bless</button> <script> function sayHi(){ console.log(window.event === event); console.log(event);
2020-06-01 12:08:40 911
spring tool suites安装包
2020-10-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人