热爱编程 热爱生活

热爱编程 热爱生活

  • 博客(78)
  • 收藏
  • 关注

原创 开发多个项目之后的一些感想....

软件开发这行业的创新来源于需求,有了需求才能带动技术的提高和变革,不然只能是"闭门造车"。因此想要开发好一款好的软件,就得实实在在地了解客户需求。经过几个项目之后,软件开发的工程化思想也愈加成熟。让自己渐渐爱上了这门行业,特别是当自己的技能能够转化成一定的财富的时候,那种心情是难以表述的。使用到技术栈基本上是Vue+Spring Boot的组合,期间要忙着处理各种定制化需求,还要沟通交流,然后就是项目报酬的问题都是要谈的。最近这半年接触到了不少项目需求,外卖平台搭建、物流平台搭建、仿真控制面板等...

2022-09-11 14:03:05 167 1

原创 Spring MVC 框架入门

1.框架目录结构目录分析:(1)控制器层package com.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;@Controllerpublic class HelloController { @RequestMapping("/hello")//方法的url地址 ..

2022-05-05 10:02:52 225

原创 Vue前后端分离示例

一.账号密码登录1.前端: <el-form-item prop="username"> <el-input type="text" v-model="formLogin.username" placeholder="用户名"> <i slot="prepen..

2022-04-17 18:47:31 678

原创 Vue解决跨域问题

场景:来源于团队成员的分享注意:vue.config.js更新完后要记得重启(一)新建vue.config.js 并配置module.exports = { devServer: { open: true, host: 'localhost', port: 8081, https: false,//如果是https 还要加上secure:false //以上的ip和端口是我们本机的;下面为需要跨域的

2022-04-10 06:14:47 1547

原创 SQL查询之美

三张表:1.Student表2.Course表3.SC表问题:一.查询选修了全部课程的学生姓名分析:(1)将该命题转为:不存在该学生没有选修的课程二.查询至少选修了学生201215122选修的全部课程的学生学号分析:(1)将该命题转为:不存在没有一门课(被学生201215122选择的课)没有被该生选择的学生学号和姓名每日一句:"Don't waste it time living someone else life" ...

2022-03-30 22:12:15 559

原创 关于@font-face

场景:昨天在同学因为不想弄CND 于是自己下载Bootstrap包并导入,但字体图片无论怎么样都显示不了,于是加了下面几行代码就弄好了探索过程:1.后来我Ctrl+左键 去查看对应的源码发现font-family有一个自定义的字体样式这个字体样式需要我们自己导入 也就是用到了@font-face@font-face是CSS中的一个模块 用于导入自定义字体样式分析下@font-face的语法/*一.常用的字体格式:woff ttf eot otf svg二.对应的..

2022-03-27 05:57:18 725

原创 Android开发之ConstraintLayout布局

"Beneath no one"知识点:(约束布局其实是会相对制约的)一.根据父组件布局 app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="p.

2022-03-08 14:12:23 2574

原创 Java多线程实例

模拟龟兔赛跑实现方法:1.定义一个抽象类Animal 继承Thread类2.在animal类中定义抽象方法 runing 然后在重写的run方法中调用3.创建一个接口 并声明一个接口对象 用于后面作为回调函数使用4.子类去重写running方法:5.回调类6.主函数...

2022-01-06 11:43:45 631

原创 哈夫曼树构造,编码,译码

code is beautiful运行结果:使用频率小的编码尽量短详解:1.构造(链表实现)要点:一.采用STL优先队列筛选出权值小的两个节点,重写比较方式struct cmp { //重写仿函数 bool operator()(Node* a, Node* b) { return a->weight > b->weight;//小顶堆...

2021-11-28 09:53:20 501

原创 sql实现学生信息查询

效果图:一.方法概要1.字符串拼接 implode2.多表查询3.php变量在sql的引用二.详解:1.插入数据时由于涉及多次操作考虑自写insert()函数,提高效率function insert($table,$arr,$link){ $keys=implode(',',array_keys($arr));//根据逗号分割数组的key值 $vals="'".implode("'".','."'",array_values($arr))."'..

2021-11-05 22:03:21 5700 2

原创 sql实战入门

功能:前端页面获取用户姓名 和 发布的内容并加载到数据库中 然后提取数据库的数据显示在前端页面效果图:方法解析:一.表单获取用户数据 login.php 和 main.php1.login.php<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>用户登录</title><...

2021-10-31 14:53:00 209

原创 CSS实现1024动画

效果图:一.方法要点:1.animation函数使用2.nth-child(n)控制子元素3. @keyframes+自定义函数 来定义动画规则和关键帧二.核心代码讲解:1animation: myMove 1.5s ease alternate infinite;参数对应: name,durationm,timing-function,direction,iteration-count2.(1)其中0% 50% 100%定义不同时刻的帧(2)rotateY

2021-10-24 16:25:39 256

原创 Vue-搜索框实现

一.方法分析1.字符串匹配2.v-for循环实时更新元素3.@click=""实现点击后页面的跳转同时设置不同id来根据内容的不同来跳转到不同页面二.代码分析:html代码:1.设置v-model绑定元素内容2.goPage(data.id) 写一个函数来根据id不同跳转界面<div class="container" id="div1"> <div class="search bar1"> <form> ..

2021-10-22 13:56:56 8407

原创 两行js代码实现页面横向滚动

1.HTML代码:<main> <div class="container"> <div class="page">Page1</div> <div class="page">Page2</div> <div class="page">Page3</div> </div></main>2.JS代码:deltaY:鼠标滚轮往上移动,de...

2021-10-16 16:18:50 588

原创 C++表达式求值

"sharinghappiness is happy" -2021-10-8一.细节处理:1.注意负数 因此要进行字符串预处理string format(string str) { int len = str.length(); fo...

2021-10-08 20:56:19 881

原创 javascript动态网页

1. 效果图 源码:

2021-09-26 20:19:46 986

原创 CSS实现动态按钮

1.animate()函数使用$(selector).animate(styles,speed,easing,callback)分析:1.导入Jquery地址<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script><script src="jquery.color.js"></script>我的github下载地址:...

2021-09-24 22:43:21 620

原创 Bootstrap实现Markdown编辑器

进腾讯 效果图:争取写出一个直接获取鼠标键盘事件的web界面,而无须通过标签进行操作 一.工具简介1.Bootstrap框架2.ace编辑器3.javascript中highlightjs在我的git hub上可下载全部源码(包括工具包)下载后直接可运行GitHub: Where the world builds...

2021-09-19 14:04:06 1179 1

原创 完全二叉树应用

完全二叉树:假如该树的总层数为k层,则k-1层为满二叉树,第k层叶子节点尽量位于左子树题目:http://xujcoj.com/home/problem/detail/2921题解:1.利用队列优先插入左节点2.然后采取层次遍历,去访问每个节点3.该写法要注意root根节点和左右节点都要在构造函数中进行初始化AC代码:#include<iostream>#include<cstring>#include<queue>using nam.

2021-09-07 05:04:56 412

原创 约瑟夫环问题

题目:https://codeforces.com/problemset/problem/792/B大意:n个人围成一圈,每次leader点离他为a距离的人出局,出局人的下一个变为leader,然后输出出局顺序题解:用数组模拟约瑟夫环#define _CRT_SECURE_NO_WARNINGS#include<iostream>#include<algorithm>#include<cstring>#include<map>using

2021-09-05 22:37:05 111

原创 floyd进阶,最大频率栈,反向链表,kthsmallest

1.反向输出链表(利用栈的特性)p2 = p1->next;p3 = p2->next; //p2会产生空指针 因为p1->next是空 不能赋值给p2否则会报错应该写成:p1->next=p2;p2->next=p3;#define _CRT_SECURE_NO_WARNINGS#include<bits/stdc++.h>using namespace std;//反向输出链表 采用栈的特点struct ListNode{ i

2021-09-05 06:06:34 146

原创 阿里数学竞赛之动态规划

一般涉及最值和多种情况之间关系的优先考虑动态规划典型的"双蛋黄"动态规划:解题思路:1.首先设为k个数量的杯子对应楼层T的最小检验次数,表示从t层摔下去后状态为state时还需检验的最小次数2.首先临界层的定义是:杯子出现裂痕的层数3.首先题目中提出假如t层为情况一,那么t+3才出现情况三一:无破碎,无裂痕: F(k,无破碎无裂痕)=M(k,T-t),t代表当前检验的楼层 t<=T因为假如从t层摔下去仍无...

2021-09-03 22:21:27 200 1

原创 哈希映射和KMP

1.哈希映射详解:将一个字符串按特定的规则转化成一个数字;每个字母对应一个id;id(s[i])=s[i]-'x'+1hash值:hash[i]=hash[i-1]*p+id(s[i])例如:求某个区间的hash值即为;例如求: 3 ,4哈希值: s3*p+s4即:归纳为求l到r的哈希值题目举例:很久很久以前,森林里住着一群兔子。有一天,兔子们想要研究自己的 DNA 序列。我们首先选取一个好长好长的 DNA 序列(小兔子是外星生物,D..

2021-09-03 07:51:51 141

原创 贪心算法应用

题目:Problem - 7087 (hdu.edu.cn)题解:1.每次更新最大存储剩余空间去存储#include<iostream>#include<queue>#include<algorithm>#include<functional>using namespace std;const int N = 1e5+1;int a[N];bool cmp(int a, int b){ return a > b;}.

2021-09-02 06:49:52 93

原创 状态转移思想

题目:http://xujcoj.com/home/problem/detail/3263几大素数筛选法:优化埃式筛: 1.合数n的最小因子一定小于sqrt(n),因此i只需要到n/i 2.j=i*i避免重复筛选 例如写成for(int j=i+i;j<=n;j+=i) 此时6就会被2*3 ,3*2重复筛 3.时间复杂度为0(n)void E_sieve(){ for (int i = 2;i <= n / i; i++) { if ...

2021-08-31 21:49:16 122

原创 二分优化好题

题目:P3242 - 最大平均值 (xujcoj.com)题解:1.IST20013的帮助2.编程反思:1.能少开数组就少开数组2.没有精度要求统一用long long 3.学会去优化3.题目思路:1.平均值一定在-1e6和1e6之间因此直接用二分去逼近2.让每个区间的元素都减去这个平均值,其中用到前缀和,然后最后求出区间和,若大于0则mid满足,继续寻找更大的数3.优化代码: for(int i=1;i<=n;i++) { sum[

2021-08-30 14:57:20 161

原创 双链表实现

1.相比于单链表多一个可以访问后面节点的前驱节点插入操作:newNode->_next = pos;pos->_front->_next = newNode;newNode->_front = pos->_front;pos->_front = newNode;删除操作:Node<T>* front = pos->_front;Node<T>* next = pos->_next;next->_fro

2021-08-30 08:59:12 96

原创 dp问题集

1.状压dp:有一个N*M(N<=5,M<=1000)的棋盘,现在有1*2及2*1的小木块无数个,要盖满整个棋盘,有多少种方式?答案只需要mod1,000,000,007即可。考虑用二进制存储每一行的状态 比如00100表示第3行放着一个盒子,状压的核心思想state代表当前行的状态 nex代表其对下一列产生的影响(例如横着放木块)AC代码:#define _CRT_SECURE_NO_WARNINGS#include<iostream>#include&l

2021-08-29 15:21:07 132

原创 平衡二叉搜索树

定义:1.一棵二叉搜索树,满足右节点大于(或等于父节点),左节点小于(或等于)父节点2.同时又满足每个节点的左子树的高度减去右子树的高度不大于1,即为-1 0 1.涉及知识点:1.插入分为以下几种情况:LL型 RR型 LR型 RL型2....

2021-08-28 16:23:06 98

原创 栈的两种实现方式

动态数组实现:#define CURL_STATICLIB# include<iostream># include<string>#include<assert.h>using namespace std;template<typename T>class Mystack{private: T* arr; int _count; int cap;//容量 int length;public: My

2021-08-27 15:19:35 75

原创 最大流问题

1.网络流:在一个有向图中u,v代表顶点 G(u,v)代表从u到v上的流量S代表源点,T代表汇点最大流:1.源点到汇点路径上的最大流量2.如何求:1.利用dfs()去搜源点到汇点的最大流,但这个最大流必须是这条路径上的最小流量.然后正向边减去相应的最小流量,反向边加上相应的最小流量,这就是建立增广路径2.然后利用bfs()去判断是否能存在源点到汇点的增广路,不存在结束,求出最大流模板题目:http://poj.org/problem?id=1273AC代码:

2021-08-27 07:53:50 82

原创 队列实现原理和应用

循环数组实现队列:#define _CRT_SECURE_NO_WARNINGS#include<bits/stdc++.h>using namespace std;template<class T>class LoopQueue{public: LoopQueue(int c ); ~LoopQueue();public: bool isEmpty(); int size(); bool push(T t); bool pop(); T front

2021-08-26 07:42:21 124

原创 堆排序和快速排序原理实现

堆排序:#define _CRT_SECURE_NO_WARNINGS#include<bits/stdc++.h>#include <assert.h>using namespace std;template<typename T>class MaxHeap{private: T* data; int _count; int capacity;public: MaxHeap(T cap) { data = new T[cap + 1]

2021-08-25 16:04:27 111

原创 STL+树

题目:https://codeforces.com/problemset/problem/675/D大意:构造一个二叉树,依次输出对应的输入每个值的父节点题解:1.利用set从小到达的排序进行存储节点 2.分情况考虑AC代码:#define _CRT_SECURE_NO_WARNINGS#include<iostream>#include<set>#include<map>using namespace std;const i...

2021-08-23 21:58:19 91

原创 ST表+二分

题目:https://codeforces.ml/contest/1549/problem/DST表:1.不支持在线修改 预处理事件复杂度0(nlogn),查询事件o(1)2.例如求某一段最大值 st[i][j] 表示从i到i+2^j那么它的最值则是由前一半和后一半决定前一半:为i+2^(j-1),后一半则为(i+2^(j-1)+1)+2^(j-1)那么st[i][j]=max(st[i][j-1],st[i][i+2^(j-1)+1][j-1])for(int j=1;(1&

2021-08-23 06:09:33 183

原创 并查集+建图

题目:https://codeforces.com/problemset/problem/1559/D1题目大意:两张无向图,给定n个顶点 m1,m2条边 ,问最大还能再添几条边保证不会形成环路, 两张图同时添加。题解:1.用并查集去搜是否会构成回路,若两张图均满足i 顶点 是j 节点的祖先 ,则说明形成环路,不满足 ,否则 满足#define _CRT_SECURE_NO_WARNINGS#include<vector>#include<iostream..

2021-08-21 22:41:05 88

原创 机器学习:线性回归

低级API实现:1.随机初始化数据import matplotlib.pyplot as pltimport tensorflow as tfTRUE_W=3.0TRUE_b=2.0NUM_SAMPLES=100#初始化随机数据X=tf.random.normal(shape=[NUM_SAMPLES,1]).numpy()noise=tf.random.normal(shape=[NUM_SAMPLES,1]).numpy()y=X*TRUE_W+TRUE_b+noise #添加

2021-08-21 09:09:35 758 2

原创 TKKC round#3

1.题目:http://xujcoj.org/Home/Problems/status/pro_id/1590反思:1.求解方程->二分逼近法 2.注意精度的判别 priintf(".1lf",l) 保留一位小数 f:float lf:double .n保留n位小数 3.遇到精度题,统一改成double,除了幂次方 4.涉及到数学,一般采用等式化简AC代码:#define _CRT_SECURE_NO_WARNINGS...

2021-08-21 07:43:52 215

原创 二叉搜索树模板

二叉树:每个节点最多只有两个节点二叉搜索树:性质:左子树不为空,左节点上的值都必须小于根节点上的值,若右子树不为空,右节点上的值必须大于根节点上的值体现在insert这个步骤上template <typename T>void BSTree<T>::insert(T key){ BSNode<T>* pparent = nullptr; BSNode<T>* pnode = root; while (pnode != nullptr

2021-08-20 15:16:14 199 1

原创 机器学习:梯度下降法

import numpy as npimport tensorflow as tffrom matplotlib import pyplot as pltx = tf.linspace(-10.0, 10.0, 100)x=tf.Variable(x)#计算过程中x需转为变化张量with tf.GradientTape() as tape: #追踪梯度 s=1/(1+tf.math.exp(-x))grad=tape.gradient(s,x) #计算梯度gradplt.plot(.

2021-08-19 15:10:47 73

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除