- 博客(28)
- 收藏
- 关注
原创 《jvm学习1》openjdk编译调试环境搭建
1.环境准备1.vmvare162.ubantu 16.04镜像3.jdk1.7.0_724.jdk1.8.0_1925.openjdk-8-src-b132-03_mar_2014.zip6.vscode1.65笔者使用的是win10,因此安装vmvare,并创建ubantu虚拟机,在ubantu上安装vscode。2.编译jdk新建目录/home/hhl/jdk/将jdk1.7和jdk1.8以及源码解压到此目录下2.1 执行configure进行检查,根据提示安装缺少的库./co
2022-03-14 23:23:03
689
原创 vim + cscope 打造linux下的IDE
1.安装vim命令或者下载自己编译安装vimrcvimrc是vim的配置文件,比如原生的vim里不显示行号,在vimrc里写入set nu,则vim会显示行号。vimrc在哪1.root用户 etc/vim/vimrc修改这个会对所有用户的vim设置有效,且一旦修改错误影响vim的使用2.home/用户名/下一般用户下面是没有的,将etc下的拷贝到这里就行安装cscope命令或...
2020-03-19 11:00:37
221
原创 lys学python:Day1
前言当你看到这篇文章的这一刻,表示你要开始学python了,你下定决心了开始学习了吗我也没有学过python,所以这次可以一起学今天先学习number和string这两个数据类型、if/else语句,如何从键盘获得数据今天之后会有一个小作业,编写时要记得养成规范的编码习惯由于篇幅有限,我提到的知识点你可以从网上找资料深入学习(一)python 编码规范标识符标识符是声明的变量名字,...
2020-02-17 14:19:51
257
原创 双指针,滑动窗口,单调队列/栈
双指针解决问题降维,优化时间复杂度一般思路暴力解法–>寻找性质(单调性)–>双指针牛刀小试给定排序的数组和一个target,寻找数组里两数之和为target的两个数的索引下标,若不存在返回{-1,-1}。1.暴力解法:vector<int> twosum(vector<int> nums,int target)for(int i = 0;i&l...
2019-10-07 11:25:22
265
原创 设计模式(重新理解面向对象)
软件系统设计的复杂性例如:建筑商不会在盖好的100层楼里要求加入一个地下室,但这在软件领域确实很常见的。根本原因就是软件系统设计中面临频繁的需求变化,客户对象需求的变化,平台的变化等,这也是软件系统复杂的原因。解决方法一般两种:1是分而治之,对应于面向过程的语言,如c语言2是抽象,既然不能全部掌握复杂的对象,我们选择忽视对象非本质的细节,而去处理泛化和理想化了的对象模型。程序员向下应具有...
2019-09-28 23:46:35
198
原创 背包问题之(01背包)(完全背包)
01背包有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。输出最大价值。常规解法背包问题属实动态规划的一类,因此可以用动态规划解决状态表示F[i][j] 表示当体积为j时前i件物品可以装的最大价值考虑到开始选第i件物品时,状态转移分为两种1.背包里不装第...
2019-09-24 18:44:16
196
原创 c++11新特性
语言语意1 可变参数模版2 小东西1.vector<vector >不需要在加空格,直接vector<vector>就可以了2.nullptr取代NULL,0,防止0和空指针的歧义3.auto 自动推导变量类型3 一致性初始化c++11之前对象的初始化种类繁多(),{},c++11提供一致性初始化{},如`int values[] {1,2,3};vect...
2019-09-24 14:06:54
169
原创 设计模式之抽象工厂
动机在软件系统中,往往面临着一系列相互依赖对象的创建工作,由于需求变化,往往存在更多系列对象的创建工作如何应对这种变化,避免客户程序和多系列对象创建工作的紧耦合?...
2019-09-23 11:31:16
127
原创 设计模式之工厂模式
背景在我们写代码时,经常会遇到下面这种情况class user { void create() { //当产品A,B变化成C,D需更改使用者类的代码, //导致使用者与具体类的紧耦合。 productA *pA = new productA; productB *pB = new productB; }};class productA {};class produ...
2019-09-23 10:34:38
95
原创 设计模式之观察者模式
定义定义对象间一种一对多的关系,以便于当一种对象的状态变化后,所有依赖它的对象都能都得到自动更新一个例子现有一个数据,多个界面作为数据的观察者,当数据变化后,界面能自动得到通知通知机制(核心)class IObserver {public: virtual void update(int value) = 0;};数据类class Data {private: int ...
2019-09-21 11:34:27
113
原创 设计模式之单例模式
定义保证1个类仅有一个实例,并提供该实例的一个全局访问点class singleton {private: singleton(); singleton(const singleton &other);public: //线程非安全版本 static singleton* getInstance() { if (m_instance == nullptr) { m...
2019-09-21 09:50:35
94
原创 动态规划开篇
什么是动态规划?动态规划(dynamic programming)是运筹学的一个分支,是求解决策过程最优化的数学方法。20世纪50年代初美国数学家R.E.Bellman等人在研究多阶段决策过程的优化问题时,提出了著名的最优化原理,把多阶段过程转化为一系列单阶段问题,利用各阶段之间的关系,逐个求解,创立了解决这类过程优化问题的新方法——动态规划。动态规划程序设计是对解最优化问题的一种途径、一种方...
2019-08-15 16:48:04
618
原创 leetcode第53题(具有最大和的子数组)
给定整数数组号,找到具有最大和的相邻子数组(至少包含一个数字)并返回其和class Solution {public: int maxSubArray(vector<int>& nums) { //动态规划 //原问题分解成i个子问题,每个子问题表示为以i结尾的最大子数组和,原问题的最优解即是求i个...
2019-08-09 11:54:32
161
原创 LeetCode第32题( Longest Valid Parentheses)
题目Given a string containing just the characters ‘(’ and ‘)’, find the length of the longest valid (well-formed) parentheses substring.Example 1:Input: “(()”Output: 2Explanation: The longest valid...
2019-08-08 11:46:56
119
原创 LeetCode刷题 _第21题( Merge Two Sorted Lists)_感想
题目描述菜鸡解法mergeTwoList(ListNode *l1,ListNode *l2){ ListNode *head = new ListNode(1); ListNode *cur = head; while(l1 && l2){ if(l1->val <= l2->val){ cur->next = l1; l1 ...
2019-07-30 15:35:01
241
原创 LeetCode刷题 _23题(Merge k Sorted Lists)_感想
题目描述菜鸡解法之前做过合并排序的两个链表,这道题从两个变成K个,于是想着先合并两个,再用合并过的和下一个合并,其实还没写就知道复杂度太高,但还是硬着头皮写了下来,运行,果然,击败百分之二十,菜 ListNode* mergeKLists(vector<ListNode*>& lists) { int k = lists.size(); ...
2019-07-30 15:05:27
158
原创 LeetCode刷题 _第22题(Generate Parentheses)_感想
题目描述菜鸡解法(暴力递归)看到题目第一眼,感觉和第20题有效的括号很相似,苦思冥想了10分钟没有任何思路(除了暴力递归),试想一下笔试时也没这么多时间考虑,于是想着不管复杂度多少,先AC一下!就这样还磕磕绊绊了半小时,于是诞生了如下垃圾代码对,你没有看错,120ms,一是想着能不能给递归剪下枝,于是用了两个变量记录当前已存在的左括号数量和右括号数量,当左括号大于一半时返回,不然像((...
2019-07-29 18:04:57
211
原创 运行apue书上第一个例子
环境Ubantu18.04例子:apue第三版第4页 ls1(列出一个目录的所有文件)搭配apue开发环境1:下载apue.3e我这里使用本机下载然后用xftp传输到虚拟机上,下载链接网上有很多。2:编译由于文件太多我们不可能一个个编译,所以使用makefile文件进行编译cd ./apue.3e后进行make,编译不通过,错误提示:can,t find -lbsd,解决办法...
2019-07-24 11:57:35
288
原创 liunx下进程相关命令
查看进程ps命令查找与进程相关的PID号:1. ps a 显示现行终端机下的所有程序,包括其他用户的程序。ps -A 显示所有程序。ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。ps -e 此参数的效果和指定"A"参数相同。ps e 列出程序时,显示每个程序所使用的环境变量。ps f 用ASCII字符显示树状结构,表达程序间的相互关系。ps ...
2019-07-07 16:23:30
165
原创 linux系统下gdb调试c代码
这里写自定义目录标题编译启动常用调试命令以unp书上例子测试编译gcc cli.c -o cliapp -lunp -g启动gdb cliapp后进入gdb调试环境启动 run(和不用gdb一样,,一次执行完)单步调试 start常用调试命令|n(next)|往下执行 ||s(step)|往下执行,但是可以进入函数内部|| q(quit) |退出gdb || list...
2019-07-07 11:42:41
233
原创 xshell连接ubantu 出现Connection failed
错误如下所示原因:没有安装openssh-server安装openssh-server才能用ssh访问linux系统sudo apt install openssh-server
2019-07-02 18:00:43
1024
原创 运行unp书上第一个例子
1.下载unpv13e.tar.gz网上有很多资源。下载好解压到linux目录下2.打开readme。按照步骤操作执行第一步cd lib make时,有如下错误 vim inet_ntop.c 定位到第60行,size_t 变为socklen_t类型其他博主还遇到一些错误,但我只遇到这一个错误,警告不用管3.将生成的静态链接库linump.a复制到usr/lib和usr/l...
2019-07-02 17:51:54
383
原创 ubantu apt命令失败
现象使用ubantu安装软件时,显示软件包无法下载解决经过很多次盲目探索才发现,我可能网络有问题,于是ping了一下百度才发现是没联网,我选择的是桥接模式,桥接模式下虚拟机IP要和本机IP在同一网段,我的不在,若不想更改虚拟机IP的话,将虚拟机改成NAT连接就行了...
2019-06-30 15:09:57
208
原创 linux ubantu ifconfig命令找不到
1 首先安装工具试试apt-get install net-tools执行这步之后我又出现了问题上网查阅之后大部分博主给了这个答案sudo rm /var/cache/apt/archives/locksudo rm /var/lib/dpkg/lock2我试了之后并没成功,对比我的错误发现,我再次执行了以下命令sudo rm /var/lib/dpkg/lock-fronten...
2019-06-30 10:49:00
137
原创 ubantu切换到root账号
问题第一次使用ubantu发现切换不了root账户,因为我安装ubantu的时候就没设置过root账户解决如下图所示重新设置密码就行
2019-06-30 09:57:37
282
原创 github删除相关操作
1.删除文件夹1.1本地不删远程删$ git pull origin master # 将远程仓库里面的项目拉下来$ dir # 查看有哪些文件夹$ git rm -r --cached x # 删除x文件夹$ git commit...
2019-06-30 09:56:40
137
原创 c++ primer第16章课后习题答案
16.1.1节练习练习16.1当我们调用template时,编译器会根据函数实参的类型推断模板实参,从而确定最匹配的绑定到模板参数T的 类型,之后编译器用推断出得模板参数来实例化一个特定函数的版本,这个过程就叫做实例化。练习16.2模板函数在.h文件中定义#ifndef TEMPLATE_COMPARE_H#define TEMPLATE_COMPARE_Htempl...
2019-03-17 22:06:23
898
原创 C++ Primer第一章课后答案
1.1由于我是用的IDE为VS2010.我使用的编译器是vs2010自带的MSVC2010,在Window下使用MSVC编译器进 行编译链接成exe步骤如下:1:新建文本文档,输入如下代码 int main() { return 0; }2:保存成cpp格式3:打开cmd,cd命令找到该源文件所在的目录,运用cl命令一次性生成.obj和.exe。![在这里插入图片描述](...
2019-01-02 20:05:46
106
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人