自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 cmd运行Python文件后还能继续输入指令的方法

在命令行cmd运行python文件后,还能继续输入代码,查看变量的办法

2021-12-20 14:43:20 3145

原创 Tex导出PDF乱码问题

用Latex→DVI→PDF导出可以复制内容的PDF

2021-12-20 13:08:13 3762

原创 cmd下的SQL中文乱码问题

SQL与Windows命令行交互的中文乱码问题

2021-12-15 00:56:15 2665

原创 数据结构1——链表

链表与邻接表单链表这里主要讲用数组模拟链表的数据结构。首先思考一个问题,为什么不用结构体和指针来模拟呢?这样看上去不是结构更清晰吗?struct Node{ int val; Node *next;};Node1 = new Node(); // 非常慢主要原因是:如果用结构体的话,每创建一个新节点,都要用new函数,这个操作是非常慢的。在笔试里面,Node的数量都是10510^5105级别的,基本上new完了,就超时了。用数组模拟单链表需要用到两个数组,两个数组通过

2021-09-27 13:44:28 119

原创 基础算法5——双指针

双指针算法双指针是一种编程思想,不是某种具体的编程套路或是算法。很多需要双重暴力循环解决的问题,用双指针的思想都可以大大减少复杂度。for (i = 0, j = 0; i < n; i ++){ while (j < i && check(i, j)) j ++; // 每道题目的具体逻辑}常见问题分类: (1) 对于一个序列,用两个指针维护一段区间 (2) 对于两个序列,维护某种次序,比如归并排序中合并两个有序序列的操

2021-09-27 13:20:19 164

原创 高斯消元解线性方程组----C++实现

高斯消元O(n3)O(n^3)O(n3)对于nnn个未知数nnn个方程构成的线性方程组:{a11x1+a12x2+⋯+a1nxn=b1a21x1+a22x2+⋯+a2nxn=b2⋯an1x1+an2x2+⋯+annxn=bn\left\{\begin{array}{c} a_{11}x_1+a_{12}x_2+\cdots+a_{1n}x_n=b_1 \\ a_{21}x_1+a_{22}x_2+\cdots+a_{2n}x_n=b_2 \\ \cdots \\ a_

2021-09-23 22:37:00 1969 1

原创 基础算法4——高精度乘除法

1、高精度乘低精度这个乘法的思路和我们习惯的笔算乘法是反过来的:是用高精度的一位乘以低精度,然后确认本位和进位:A = 123, b = 12; // 实际中A可能会远大于bA * b = 1 2 3× 1 2------------------ c4 c2 c1 c0 c0 = (3 × 12 + 0 ) % 10 = 6; t1 = (3×12)/10 = 3;c1 = (2 × 12 + t1) % 10 = 7;

2021-09-18 15:49:05 330

原创 基础算法3——高精度加减法

高精度加减法只有c++才涉及到这个问题。因为java有个大整数类,python默认所有数都可以无限大,所以不去存在这个问题。而C++因为数据类型的限制,在下面这些情况可能遇到问题:1. A + B // A,B都是10e62. A - B 3. A x a // len(A) ≤ 10e6, a ≤ 10000 (两个数相差巨大)4. A ÷ a大整数在c++里面只能靠数组存下来,(实际中更长用vector存,因为自带一个.size()的属性)string num

2021-09-18 15:10:37 433

原创 基础算法2——二分

二分有单调性的情况一定可以二分;但是二分不一定需要单调性。1、整数二分有两个整数二分的模板,分别可以找到红色/绿色的那个分界点。但实际应用时,不需要看着这个图去想我需要用哪个模板。而是下面这个步骤:写好一个check(mid)的函数,这个check要能保证在mid的左右两边,一半是false一半是true如果当前check(mid)为真,那我下一步是让left = mid还是让right = mid。这分别就对应两个模板了。两个模板里一个mid = (l + r + 1) / 2,一个mi

2021-09-18 14:07:24 178

原创 基础算法1——排序

排序算法在这里插入代码片快速排序O(nlogn)O(nlogn)O(nlogn)问题描述:对于数列a[l, r]​,按从小到达排列。快速排序三步骤:确定分界点:常选择 x = a[l]、a[(l+r)/2]、 a[r]​调整范围:通过某些办法把≤x\leq x≤x的数移到数组a的左边,≥x\geq x≥x的数移到数组a的右边。★★递归处理左右两段(分治思想)这里最关键的是怎么把当前数组a[]分成两段。注意:分成两段后,x不一定会集中在分界线附近的,这随便找个例子都能验证。介

2021-09-18 13:47:45 267

空空如也

空空如也

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

TA关注的人

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