- 博客(15)
- 收藏
- 关注
原创 阿里笔试
题目:给一颗节点数为n的完全二叉树,对于每个“左斜节点集”做一次循环上移k单位的操作,问移动后这棵树的层先遍历。例如:n = 7, k = 1:移动前:移动后:解释:一共四个“左斜节点集”,分别是(有序集合,顺序从上到下):{1,2,4}{5}{3,6}{7}每个集合都循环上移1个单位变成:{2,4,1}{5}{6,3}{7}输入:第一行输入一个整数t,表示测试次数接下来t行,每行输入两个整数,分别是n和k输出:移动后该树的层先遍历。样例输入:7 1样
2021-04-23 20:43:14
239
1
原创 列车调度问题
题目链接思路:用vector模拟队列(左边是队头),保证每个队列都是从左到右单调递减的,最终输出所需队列的个数。#include <iostream>#include <vector>using namespace std;int main(){ int n; cin>>n; int a[n]; for(int i=0;i<n;i++){ cin>>a[i]; } vect
2021-04-19 16:49:06
171
原创 基于哈夫曼树的文件压缩与解压
背景原始数据一般使用定长编码,但当各个字符的频率不一样时,如果能够让使用频率高的用短码,使用频率低的用长码,则可大大减少文件的长度。例如,我们有一个字符串 ‘ABCDAABCABA’其中A,B,C,D出现的次数分别为5,3,2,1,如果用定长编码:A --- 00B --- 01C --- 10D --- 11则需要22个比特来表示:00 01 10 11 00 00 01 10 00 01 00如果换一种编码方式:A --- 0B --- 10C --- 110D ---
2021-03-24 19:39:31
2144
1
原创 二叉树的变美之路(如何将二叉树打印地漂亮一点)
随便找棵树,比如递归实现Fibonacci数列的调用树,即对于每一个数字n(n>=2),其左节点为n-1,右节点为n-2。#include <bits/stdc++.h>using namespace std;void print_Tree(int curr, int deep=1, string code="."){ if ( curr<2 ) { return ; } print_Tree(curr-2, deep+1, code+"0"); for (i
2021-03-22 20:52:53
202
转载 Python可视化 生成bmp图像
代码大部分来自于:用python生成bmp图片稍微做了一点修改from array import arrayclass bmp: """ bmp data structure """ def __init__(self, w=1080, h=1920, color = 0xffffff): self.w = w self.h = h self.gen_bmp_header() self.paint_bgcolor(c
2021-02-05 00:35:22
1759
原创 Java 手撸基于二叉搜索树的Map
基于二叉搜索树,加了泛型和迭代器的实现import java.util.*;class TreeMap<KeyType extends Comparable<KeyType>, ValueType> implements Iterable<TreeMap<KeyType,ValueType>.Node>{ class Node{ private KeyType key; private ValueType value; private Nod
2021-02-04 23:56:19
183
原创 Java贪吃蛇
游戏逻辑实现思路源自BV1QZ4y157rK用java可视化,加上了消息队列机制优化手感import javax.swing.JFrame;import javax.swing.JPanel;import java.awt.Graphics;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import java.awt.Dimension;import java.awt.Color;import java.ut
2021-02-01 13:55:41
301
1
原创 经典递归案例:失败时下次成功率递增-求装备强化成功的期望次数
强化一件装备,有10%的几率成功,如果未成功,则下次成功几率增加10%(即:第一次未成功,则第二次成功几率为20%),装备强化成功的期望次数大概是多少?function f(deep, p) if p >= 0.99 then -- lua精度问题 return deep else print("f("..deep..","..p..") = "..deep.."*"..p.." + "..(1-p).." * f("..(deep+1)..","..(p+0.1)..")") .
2021-01-08 11:21:37
2133
原创 玩指针
指针作为C/C++的灵魂,其可玩性可以说是相当不错的。指 float 为 int#include <bits/stdc++.h>using namespace std;int main(int argc, char const *argv[]){ float a = 20.59375; int *p = (int *)&a; cout << (*p) << endl; return 0;}输出11013160961101316096是
2020-11-20 13:11:03
162
原创 类RC4的文件加密
文章目录前置知识异或运算(以下异或用“⊕”代替)主体思路大致流程思路欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入前置知识异或运算(以下异或用“⊕”代替)ABA ⊕ B
2020-09-16 13:25:57
463
原创 第 20 次 CSP认证 202009-3 点亮数字人生代码
题目ac的代码搞不到了,凭印象大概写了下,应该是对的吧,应该…#include <bits/stdc++.h>using namespace std;#define int long long#define Log //日志开关bool isLoop = false;struct Gate{ #ifdef Log string name; #endif vector<Gate* > inputs; bool output;
2020-09-15 22:31:26
741
1
原创 笔记
笔记cmdwin10 cd指定路径:cd /d [path]改控制台编码:CHCP [num]936 GBK(一般情况下为默认编码)437 美国英语65001 utf-8gccg++指令 g++ [fileNameIn] -std=c++11 -o [fileNameOut]
2020-08-30 09:28:02
704
原创 内存中的整数
整数在内存中是逐字节逆序存储的,例如说305419896(0x12345678),其二进制表示为10010001101000101011001111000而在内存中则为00010010001101000101011001111000(0x87654321)#include <iostream>#include <bitset>using namespace ...
2020-04-24 12:47:38
327
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人