CSS实现水平垂直居中的几种方式
实现水平垂直居中的几种方式
基本页面代码
代码:
12345678910111213141516171819202122232425262728293031323334353637383940<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> *{ padding: 0; margin: 0; } .parent ...
嵌套数组的扁平化处理
JavaScript 实现数组的扁平化处理
什么是数组的扁平化处理
数组的扁平化处理指将一个多维数组变成一维数组
1[1, [2, 3, [4, 5]]] ---> [ 1, 2, 3, 4, 5 ]
Mode One (方式一) ES6 的 flat()
ES6 提供了数组方法 flat(depth) 对数组进行扁平化处理。
参数:
depth 被扁平化的数组的层级,默认值为 1 可以为 Infinity ,表示完全扁平化
返回值:
一个扁平化处理后的新数组
1234const arr = [1, [2, 3, [4, 5]]]const newArr = arr.flat(Infinity)console.log(newArr) // [ 1, 2, 3, 4, 5 ]
Mode Two (方式二) ES6 的 拓展运算符
...[] 能用于拓展数组,将一个数组转为用逗号分隔的参数序列。
思想: 通过arr.some()判断数组是否还嵌套数组,嵌套就对嵌套在最外层的数组进行拓展运算。
12345678910111213141516const arr = [1, [2, 3 ...
vue的双向绑定原理
Vue 的双向绑定原理
主页面
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title></head><body> <div id="app"> <h1>{& ...
每日编程(20220403)
西安电子科技大学上机题(五)
题目: 已知某二叉树的先序序列和中序序列,编程计算并输出该二叉树的后序序列。
输入格式:
123仅一组数据,分为两行输入,第一行表示指定二叉树的先序序列,第二行表示该二叉树的中序序列,序列元素均为大写英文字符,表示二叉树的结点。
输出格式:
1在一行上输出该二叉树的后序序列
输入样例:
12ABDGCEFHDGBAECHF
输出样例:
1GDBEHFCA
思路:
代码:
1
前端知识总结
前端知识总结
网络相关
HTTP 、 HTTP 0.9 、 HTTP 1.0 、 HTTP 1.1 和 HTTP 1.1
HTTP 是一种协议,全称超文本传输协议(英文:Hyper Text Transfer Protocol)。它是一种构建在 TCP/IP 之上的应用层协议。主要用于实现客户端和服务端的沟通。
五层网络结构主要包括:应用层、传输层、网络层、数据链路层、物理层。
HTTP的报文结构
HTTP 是基于 TCP 的,而 TCP 在传输时分为: TCP 头和数据部分。
HTTP 请求报文由四部分组成:
请求行
头部
空行
请求体
请求行
请求行由三部分组成:
请求方法
请求url(不包括域名)
HTTP 协议版本
1GET /home HTTP/1.1
请求方法:
序号
方法
描述
定义方法的协议
1
GET
请求指定页面的信息,返回实体主体
HTTP 1.0
2
HEAD
类似于GET请求,只不过返回的响应没有具体内容,用于获取报头
HTTP 1.0
3
POST
向指定资源提交数据进行处理请求,数据包含在请求体中。POST请求可能会导致新 ...
每日编程(20220402)
西安电子科技大学上机题(四)
题目: 对于给定的字符序列,从左至右将所有的数字字符取出拼接成一个无符号整数(字符序列长度小于100,拼接出的整数小于2^31),计算并输出该整数的最大因子(如果是素数,则其最大因子为自身)。
输入格式:
1有多组数据,输入数据的第一行为一个正整数,表示字符序列的数目,每组数据为一行字符序列。
输出格式:
1对每个字符序列,取出所得整数的最大因子,若字符序列中没有数字或者找出的整数为0,则输出0,每个整数占一行输出。
输入样例:
1232qwq243dnh5
输出样例:
12127
思路:
主要在于分三步完成
首先获取用户输入,并用变量保存好
拆分出用户输入的字符串中的无符号数字保存在数组中
通过类似于求素数的方式求函数的因子(不同点在于不要从 sqrt(num) 开始,而应该从 num / 2 开始,因为 2 是最小的素数,而最大的因子除本身外应该是除 2 得到的数),从大到小遍历
代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445 ...
JavaScript学习之路(六) 函数表达式
定义函数
函数定义的两种方式:
函数声明式
1234// 函数声明式function fun(arg0, arg1, ...){ // 函数体}
函数表达式
1234// 函数表达式const fun = function (arg0, arg1, ...) { // 函数体}
函数声明式的特性:函数声明提升。
函数声明提升是指在执行代码之前,会先读取函数声明。这样函数的调用就不必放在函数声明之后。
123456// 函数声明提升 示例 先调用在声明sayHi() // Hi! function sayHi() { console.log('Hi!')}
递归
递归函数是指应该函数通过函数名调用自身。
12345678// 递归经典示例: 乘阶function factorial(num) { if(num <= 1 ){ return 1 }else { return num * factorial(num - 1) } ...
每日编程(20220401)
西安电子科技大学上机题(三)
题目: 请写一个程序,对于一个m行m列的(1 < m < 10)的方阵,求其每一行,每一列及主对角线元素之和,最后按照从大到小的顺序依次输出。
输入说明:共一组数据,输入的第一行为一个正整数,表示m,接下来的m行,每行m个整数表示方阵元素。
输入格式:
1输入一个数字方阵
输出格式:
1从大到小排列的一行整数,每个整数后跟一个空格,最后换行
输入样例:
123431 2 34 5 67 8 9
输出样例:
124 18 15 15 15 12 6
思路:
最优的算法在于用最少的循环做最多的事
本题简单,直接硬算,注意策略即可
代码:
123456789101112131415161718192021222324252627282930313233#include <bits/stdc++.h>using namespace std;void getSun(int mat[][10], int m, int *res) { for(int i = 0; i<m; i++) { ...
每日编程(20220331)
西安电子科技大学上机题(二)
题目: 写一个程序,给出指定整数范围[a ,b]内所有的完数,一个数如果恰好等于除它本身外的所有因子之和,这个数就称为完数,例如6是完数,因为6=1+2+3。
输入格式:
1共一组数据,为两个正整数,分别表示a和b(1<a<b<10^5)
输出格式:
1指定范围内的所有完数,每个数占一行
输入样例:
126100
输出样例:
123428原题样例应该有误:是闭区间[6, 100]应当输出:628
思路:
循环遍历范围内所有的数
求出每个数的因子有哪些
求出因子的和看是否会等于当前数
等于则保存在数组或者 vector 中
代码:
123456789101112131415161718192021222324252627282930313233343536#include <bits/stdc++.h> using namespace std;vector<int> getYinZi(int num) { // 求数的因子 vector<int> yinzi; for(int i ...
每日编程(20220330)
西安电子科技大学上机题(一)
题目: 编写一个程序,从键盘输入 n 个非零常数(0 < n < 1000),将这 n 个数中每个数的各位数字取出来相加,并按照从小到大的次序输出这些数字和。
输入格式:
1输入的整数之间以空格分割,输入为 0 时结束
输出格式:
1在一行上从小到大输出计算结果,整数之间用一个空格分割,最后换行
输入样例:
156 12 789 521 0
输出样例:
13 8 11 24
思路:
先获取内存缓冲区中的输入值,对得到的空格分隔的字符串一个一个进行处理。
将每个字符串按索引相加,得到值,并存入向量中。
对向量进行排序。
按照固定格式输出向量里面的值
代码:
12345678910111213141516171819#include<bits/stdc++.h>using namespace std; int main(void) { string s; vector<int> res; while((cin >> s) && s != "0") ...




