- 博客(85)
- 收藏
- 关注
原创 【学习笔记向】零基础小白快速制作最简陋MMD(VRoid + Unity)
特别鸣谢B站UP主十七时的大力支援!学生时期总会有一两个没有安排的周末,不如我们来嗑CP?学习?做MMD吧。第一天下载软件和素材 + 熟悉Unity。下载软件可能需要很久,请耐心。一、软件1、VRoid Studio用于零基础建模,B站上有教学视频,看一两支上手更快,但是不看也行。官网下载地址:https://vroid.com/studio/2、Unity...
2019-10-26 22:53:57 5770
原创 如何用unity制作一个桌面宠物?
unity版本为:2018.3.141、找到带动画模型获取途径:① unity官方有免费模型和付费模型。② 有mmd转unity的转换器。我使用的是“Little Heroes Mega Pack”素材包,里面可以自己设置主角的衣服和发型。2、设计互动动作好多材质包自带动作动画(Animation)。百度搜“unity animation”等可以查到更具体的教程,简...
2019-10-25 01:22:50 11248 1
原创 【笔试练习题】双端放石子排序
2017百度春招笔试题里面有一题是这样的:度度熊有一个N个数的数组,他想将数组从小到大排好序,但是萌萌的度度熊只会下面这个操作:任取数组中的一个数然后将它放置在数组的最后一个位置。问最少操作多少次可以使得数组从小到大有序?这篇博客里面提供了解法:https://blog.csdn.net/weixin_39530880/article/details/823157092019...
2019-09-17 19:04:30 1425
原创 C++中的设计模式整理
最近在看《Effective C++ 的55条建议》和C++源码剖析,把上面提到设计模式在这里做个记录,以备面试之需。之前的设计模式总结:设计模式学习笔记(一)(策略、观察者、装饰者、工厂)设计模式学习笔记(二)(单例、命令、适配器、外观、模板方法)设计模式学习笔记(三)(迭代器、组合、状态、代理、复合)【1】《Effective C++》条款35,用Non-Virtua...
2019-07-21 17:36:29 620
原创 关于输入输出流迭代器的使用小技巧
这种输出方式可骚气了:#include <vector>#include <set>#include <list>#include <map> // map不支持直接vector迭代器转换#include <unordered_set> #include <iostream> // std::cin, ...
2019-07-21 12:02:48 607
原创 【笔试练习题】手写LRU算法(leetcode 146)
class LRUCache {public: LRUCache(int capacity) : _capacity(capacity) {} int get(int key) { if(km_all.count(key) == 0 || !(km_all[key].is_inCache)){ return -1; ...
2019-07-13 13:47:33 1305
转载 【面试练习题】单例模式
饿汉式,基本版#include <iostream>using namespace std;class Single {private: Single() {} // 构造函数私有 Single(const Single &) {}; // 拷贝构造函数私有 Single& operator=(const Single&) {}; // 赋值...
2019-07-12 12:48:57 614
原创 【面试练习题】线程相关:来自《后台开发技术应用实践》 + 其他
【1】线程的状态:默认为非绑定、非分离、1MB大小的堆栈(ubuntu 2.6的内核线程栈的默认大小为8M),与父进程具有同样的优先级【2】等待线程——pthread_join 功能:阻塞等待,知道子线程结束运行,然后得到子线程退出码,回收子线程的资源。 如果不使用pthread_join回收线程,可能会导致类似僵尸进程一样的问题,导致内存泄漏。 【3】线程分离...
2019-07-09 10:58:01 543
原创 【面试练习题】进程间通信方式的区别
【1】管道 亲缘关系(父子、兄弟) 单向通信,如果需要双工通信,则需要建立两个管道 管道缓冲区大小受限制(由操作系统内核设定) 管道传输的是无格式的字节流,需要输入输出双方事先约定好数据的格式 是一个只存在在内存中的文件 【2】有名管道(又叫FIFO) 有名 +非亲缘 可以一个服务器接收多个客户端的管道。比如客户先把自己的进...
2019-07-09 10:42:17 840
原创 【面试练习题】C++ 使用多线程实现交替打印两个数组 + PV操作
互斥锁的版本:#include <string>#include <thread>#include <mutex>#include <iostream>using namespace std;std::mutex data_mutex;int flag = 0;void printA(int* a, int size) { ...
2019-07-08 23:01:36 2307
原创 【笔试练习题】寻找下一个字典序
leetcode第31题解法一(C++ STL函数):class Solution {public: void nextPermutation(vector<int>& nums) { next_permutation(nums.begin(), nums.end()); return ; }};...
2019-07-07 12:25:24 730
原创 一天速读《Unix网络编程》(上):TCP/UDP/IP + select/poll/epoll
Unix网络编程里面的5种IO分类 阻塞IO 非阻塞IO 信号驱动IO IO复用模型 异步IO 前四种都是同步IO,最后一种是异步的。(信号驱动IO因为数据从内核空间复制到用户空间的时候仍然会被阻塞,因此算也是同步的)。 同步IO——导致请求进程阻塞(请求进程:调用IO API的那个进程) 异步IO——不会导致请求进程阻塞 ...
2019-07-04 16:32:08 726
原创 【笔试练习题】leetcode前100道题里面的hard题解法(更新到第45题)
第4题(2个排序数组的中位数)找到两个已排序数组的中位数(https://leetcode.com/problems/median-of-two-sorted-arrays/)解法一:合并列表,再排序,时间复杂度为O(n+m);解法二:① 在nums1和nums2中各找到一个数,保证合并之后的数组中nums1[k_1]与nums2[k_2]相邻,且nums[k_1] < ...
2019-07-02 15:26:07 915
原创 【笔试练习题】shell * 字符串匹配
题目:https://www.nowcoder.com/questionTerminal/bab19e5b95b54744aa824e0d7be51487动态规划,内存超限:#include <vector>#include <string>#include <iostream>#include <regex>using names...
2019-07-01 17:15:53 793
转载 从10万个数据中找最大的10个数
海量数据处理 - 10亿个数中找出最大的10000个数(top K问题)https://blog.csdn.net/zyq522376829/article/details/47686867但是里面说的有问题,建堆的复杂度是O(m),总的复杂度是O(nlogm)从10万个数中找10个最大的数https://blog.csdn.net/sky_100/article/detai...
2019-06-30 22:23:25 5055
原创 【C++STL容器用法查补】
vector 的其他操作:v.data() 返回指向vector内部那个数组的首地址的指针(C++11新特性) v.emplace(v.end(), argvs); v.shrink_to_fit() 调整v.capacity()等于v.size()vector<bool>的其他操作:v_bool.flip() 每一位都取反 v_bool.swap(v_bool2);...
2019-06-30 17:01:52 555
原创 【笔试练习题】C++正则表达式
leetcode 10class Solution {public: bool isMatch(string s, string p) { // 使用正则表达式直接求解 if(s=="") { if(p==""||isMatchEmpty(p)) { re...
2019-06-27 17:23:29 740
原创 【读书笔记】《深入理解计算机操作系统》第七章
【1】预处理编译汇编过程预处理器(预处理,生成ASCII码中间文件)——》编译器(编译,生成ASCII码汇编语言文件)——》汇编器(汇编,生成可重定位目标文件)——》链接器(链接,生成可执行目标文件)【2】ELF格式的可重定位目标文件格式:——————|ELF头|——————|.text| —— 已经编译程...
2019-06-25 20:59:35 588
转载 【笔试练习题】求组合数
#include <iostream>#include <string>#include <algorithm>#define BIG 1000000000using namespace std; typedef long long ll; vector<char> res;int ok; // 求全排列C(n,m),如果越...
2019-06-24 19:45:25 599
原创 【笔试练习题】输入二进制字符串,输出里面包含的1的个数
解法一:用bitset头文件:<bitset>整数、字符串和布尔数组都可以直接初始化bitset,也可以直接cin.参考资料:https://www.cnblogs.com/RabbitHu/p/bitset.htmlbitset.count() 直接返回里面有多少个1.解法二:variable precision swar算法(在redis里面看到的,一次...
2019-06-22 21:02:39 874
原创 【笔试练习题】(动态规划)leetcode 115 Distinct Subsequences + 97. Interleaving String
115.Distinct Subsequences题目描述:https://leetcode.com/problems/distinct-subsequences/即判断一个字符串S可以匹配多少个子串T。例子1:Input: S = "rabbbit", T = "rabbit"Output: 3Explanation:As shown below, there are...
2019-06-20 19:06:50 531
原创 【笔试练习题】二分查找找到最接近并小于val的元素
// 二分查找找到最接近并小于val的, 返回标号, start指向第一个元素,end指向最后一个元素,如果全部比val大, 就返回-1 int findFloor(int val, vector<int> &v, int start, int end){ if(start > end){ return start - 1...
2019-06-17 14:49:05 947
原创 【笔试练习题】排序算法
测试用的IDE是牛客网:https://www.nowcoder.com/questionTerminal/508f66c6c93d4191ab25151066cb50ef【1】快速排序#include <vector>#include <random>#include <algorithm>#include <iostream>u...
2019-06-12 22:35:59 625
原创 【笔试练习题】字符串匹配算法KMP
一句话总结:空间换时间,用一个next数组保存不匹配时下一次开始比较时两个字符串指针的位置;next[ i ]中保存的是前i个字符后缀与前缀相同的个数。参考资料:【1】一个将KMP的视频,很好理解,而且很短,只有十来分钟。https://www.bilibili.com/video/av3246487?from=search&seid=18035591679131870458...
2019-06-12 10:09:00 802
原创 【笔试练习题】背包问题
题目描述:有若干瓶饮料,每种饮料只有一瓶,每种饮料的打分不同,价格也不同。你的手里有买饮料的总金额,要求买到的饮料的打分总和最高。输入:第一行是一个正整数,总金额(不大于1000);第二行是n个正整数,代表饮料单价(n不大于100);第三行是n个正整数,代表饮料的打分。输出:最高总分解析:这是经典的背包问题。背包容量——总金额;物品重量——单价;物品价值——热度值。#...
2019-06-05 15:29:28 1026
原创 学生各门课程成绩统计MySQL语句大全(面试题)
题目参照:https://www.cnblogs.com/lsgcoder101/p/6011059.html启动数据库服务(windows)netstartmysql登录数据库mysql -uroot -p# 创建和选择数据库create database dbo;use dbo;# 创建数据表create table stuscore...
2019-06-05 10:17:16 1759
原创 【笔试练习题】leetcode 416. Partition Equal Subset Sum
题目:判断一个数组是否能被拆分成两个子数组,使得这两个子数组各自的数字和相等。方案:回溯法问题:很容易超时。如果从小到大排序会超时,只有从大到小排序才可以。class Solution {public: bool canPartition(vector<int>& nums) { int sum = 0; for(int ...
2019-06-05 10:04:53 498
原创 【笔试练习题】局部链表反转
将链表的一部分(from~to)反转。#include <iostream>#include <vector>#include <algorithm>using namespace std;class node{public: node(int x):val(x), next(NULL){} ~node(); int val; node...
2019-06-04 21:41:28 712
原创 【笔试练习题】leetcode127. Word Ladder(广度优先遍历)
这是leetcode上第127题。给出原单词和目标单词和一个字典,在字典中找到过渡单词,使得原单词可以变为目标单词。要求:一次只变一个字母。输出为:最短变化路径的长度。class Solution {public: int ladderLength(string beginWord, string endWord, vector<string>& wor...
2019-06-04 11:28:03 776
原创 32位保护模式笔记2(2018.7.9写于简书)
image.pngimage.png【0x0000:0x7C00~0x0000:0x7E00】实模式下boot的加载地址,512=0x200。【0x000B8000】显存的起始位置。【0x000A0000~0x000FFFFF】ROM BIOS,硬件专有的。GDT:全局描述符表(Global Descriptor Table)。GDT中的元素是描述符(De...
2019-05-31 15:23:28 533
转载 【笔试练习题】质数因子
题目描述功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为22335)最后一个数后面也要有空格。代码(复杂度可以优化到sqrt(n)):链接:https://www.nowcoder.com/questionTerminal/196534628ca6490ebce2e336b47b3607来源:牛客网#include <io...
2019-05-31 10:47:36 556
原创 【笔试练习题】大数相加、大数相乘
大数相加:#include <iostream>#include <vector>#include <string>using namespace std;string add(string &a,string &b){ if(a.size() < b.size()) swap(a, b); ...
2019-05-30 22:17:26 661
原创 《C++对象模型》读书笔记
一、对象中member存放的顺序按照声明的顺序二、static数据成员存放在数据段中(应该即为区全局区和静态存储区)三、虚函数表初始化的时间是父类部分初始化完成后,子类部分的成员生成之前。四、执行时,虚函数根据this指针指向的虚函数表指针指向的虚函数表中的函数执行(保障执行期多态)。五、单一继承的话,一个对象只有一个虚函数指针,六、虚拟继承的话,父类中定义了虚函数、子类也...
2019-05-21 11:34:08 518
原创 STL源码剖析—— accumulate函数尝试
此函数可以用来求和、求阶乘等等。demo代码如下,结果与预想的一样。#include <iostream>#include <numeric>#include <vector>using namespace std;template <class T> struct others // 自定义操作{ T operator() (co...
2019-05-07 17:06:12 698
原创 【面试题】不用递归实现二叉树的遍历(使用栈)
源代码:https://github.com/cr19941016/preOrderTree实现环境:ubuntu16.04 + cmake3.5.1递归的本质就是循环和栈void TreeHandler::myPreOrder(TreeNode* root){ // 非递归先序遍历二叉树git cout << "mypre: "; if(!root) ...
2019-04-23 11:03:31 3232
原创 Qt界面美化的方式
【1】QML最终决定可以研究QML。可以新建QtQuickControl的工程。【2】QSS(1)添加QSS文件到qrc中。(2)在main.cpp中添加下列代码#include "mainwindow.h"#include <QApplication>#include <QFile>class CLoadQSS{ public: st...
2019-04-23 10:22:15 3444
原创 【Qt】添加3D场景到widget中
一、环境:Qt5.9 + MinGM二、步骤【1】新建一个Qt Widgets Application工程【2】.pro文件中添加QT += core gui quickwidgets 3dextras 3dcore 3drender 3dinput 3dquick 3dlogic qml quick 3dquickextras【3】在界面文件中添加QQuickWidget...
2019-04-23 10:15:39 1409 1
原创 VS2015添加include路径和其他配置
添加include路径右键工程名——>属性——>VC++目录(选择所有配置、所有平台)——>包含目录。添加lib文件右键工程名——>属性——>VC++目录(选择所有配置、所有平台)——>库目录。右键工程名——>属性——>链接器——>附加依赖项(所有配置、所有平台)——>只需要添加名字,不需要路径。...
2019-04-23 09:38:46 12565
原创 Qt5.9.3 + opencv3.4.1配置 (windows10)
Windows下OpenCV 3.4.0 + Visual Studio 2015开发环境的配置https://blog.csdn.net/duwangthefirst/article/details/79452314Qt5.9.3 + opencv3.4.1配置 (windows10)1、首先安装好Qt。2、还需要安装好VS2015,因为Qt利用了VS2015的MSVC20...
2019-04-23 09:36:40 1223
原创 学生各门课程成绩统计MySQL语句大全(面试题)
题目参照:https://www.cnblogs.com/lsgcoder101/p/6011059.html登录数据库mysql -uroot -p创建和选择数据库create database dbo;use dbo;创建数据表create table stuscore(name char(50) NULL,subject char(50) NULL ,score ...
2019-04-23 09:32:03 5418 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人