- 博客(72)
- 资源 (7)
- 收藏
- 关注
原创 基本数据类型
有个疑惑,不同的文档给出的基本数据类型长度不一致。https://www.tutorialspoint.com/cplusplus/cpp_data_types.htmhttps://www.w3cschool.cn/cpp/cpp-data-types.html自己在64位的win10上试了一下:int main(){ cout << "size of char:" << sizeof(char) << endl; cou
2021-07-07 09:09:17
304
原创 JVM学习之:运行时数据区和垃圾回收
Java虚拟机运行时数据区:器区堆二栈 程序计数器:当前线程所执行的字节码指令的行号指示器,字节码解释器工作时就是通 过改变这个计数器的值来选取下一条要执行的字节码指令。 * 占用内存较小* 线程私有* 唯一一 个在Java虚拟机规范中没有规定OutOfMemoryError情况的区域 方法区:用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译...
2021-07-07 09:03:40
241
2
原创 ·mininet相关」
运行自定义拓扑脚本mytopo.py:#!/usr/bin/python from mininet.topo import Topo class MyTopo( Topo ): def __init__( self ): "Create custom topo." # Initialize topology Topo.__init__( self ) # 生成所需要的主机和交换机 h1 = self.
2021-07-07 09:02:07
302
原创 《程序员的自我修养》objdump和readelf命令
test1.c代码如下所示:通过gcc -c test1.c生成obj文件test1.oobjdump命令主要用来查看.o文件的信息,readelf命令用来查看ELF文件。obj文件中的主要段:.text, .data, .bss.text:存放代码 .data:存放初始化了的全局变量和初始化了的static变量(包括全局和局部) .bss:存放为初始化的static变量(不占磁盘空间,其大小偏移信息通过ELF header获取)。有些编译器会将为初始化的全局变量也存放在.bss段,有些
2021-04-09 16:35:27
559
1
原创 在IDEA中运行Floodlight
用惯了IDEA,但是现在要使用Floodlight进行开发,大多是教程都是导入eclipse,这里记录一下如何导入到IDEA中。将工程文件导入到intellij idea中,导入过程中不要选取任何框架,直接导入. 删除target目录 将src/main/resources目录标记为资源文件夹 从工程的structure/module中移除test作为source.finish!...
2021-03-03 22:12:49
447
1
原创 ubuntu安装floodlight时ant命令编译失败
apt-get install build-essential default-jdk ant python-devgit clone git://github.com/floodlight/floodlight.gitcd floodlightgit checkout v0.90 #切换版本antant eclipse (使得floodlight能在eclipse中运行,否则无法导入到eclipse)...
2021-02-25 21:11:34
1379
原创 【mininet】mininet运行不成功,停留在starting switches。。。
环境Ubuntu18.04,在不小心kill了ovswitchd进程后,mininet便无法创建拓扑,只要安装正确,重启电脑即可。
2021-01-18 12:36:42
1084
3
原创 matlab泊松分布实现
泊松分布:泊松分布的参数λ是单位时间(或单位面积)内随机事件的平均发生次数。 泊松分布适合于描述单位时间内随机事件发生的次数。%service request的个数N = 20000;lam = 5; %泊松分布的参数:单位时间内请求到达的次数x = 0:1:30; %到达的次数p = poisspdf(x,lam); %概率密度plot(x, p);y = poisscdf(x, lam); %概率分布plot(x, y);samples = poissrnd(l.
2021-01-17 10:15:53
14705
原创 【Ubuntu更换源】
# 国内源# 阿里镜像源deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted un.
2021-01-17 10:00:50
148
原创 python matplot画图
做个简单记录,免得下次重新找APIimport numpy as npimport matplotlib.pyplot as pltimport pandas as pdfrom pylab import *mpl.rcParams['font.sans-serif'] = ['SimHei']plt.rcParams['axes.unicode_minus']=False #用来正常显示负号#*********************************************
2020-09-20 11:44:50
601
原创 leetcode130:被围绕的区域
题目思路一:dfs从边界开始搜,将与边界元素‘O’联通的‘O’置为‘#’,递归遍历完之后整个矩阵中只存在'X', 'O', '#'三种元素,此时矩阵中的'O'全部被'X'包围,然后将'O'全部改为'X', 将'#' 全部改为'O'。class Solution { int rows, cols; public void solve(char[][] board) { if (board == null || board.length == 0) return
2020-08-17 15:09:41
331
原创 leetcode3: 无重复字符的最长字串
题目class Solution { public int lengthOfLongestSubstring(String s) { if (s == null || s.length() == 0) return 0; int maxLen = 1; int curLen = 0; Map<Character, Integer> map = new HashMap<>(); //记录当前子串中每个字
2020-08-10 16:46:44
136
原创 KMP算法java实现
给定字符串str1和str2,求str2在str1中的位置,若str1中不包含str2子串,返回-1;public class KMPTest { public static int getIndexOf(char[] str1, char[] str2) { if (str2.length > str1.length) { return -1; } int[] next = getNextArray(str2);
2020-08-10 10:58:55
165
原创 LRU——java实现
leetcode146class Node { int key; int val; Node next; Node pre; public Node(int k, int v) { this.key = k; this.val = v; }}class LRUCache { Node head, tail; int cap; int size; Map<Integer, Node&
2020-08-07 10:27:32
169
原创 跳跃游戏
程序员代码面试指南——跳跃游戏自己的动态规划做法dp[i]表示从i位置跳到最后一个位置需要的最少跳数;base : dp[n-1] = 0, dp[n-2] = 1;递归:dp[i] = min(dp[i+1], ... , dp[i+arr[i]]);import java.util.*;public class Main{ int cnt = 0; public static void main(String[] args) { Scanne
2020-08-06 14:41:20
203
原创 tarjan算法非递归实现求强连通分量
#define MAXE 2500000#define MAXN 1000000struct Edge { uint32 to; uint32 w;};struct Node { uint32 l; uint32 r;};Edge neighborsTable[MAXE];Node G[MAXN];/*************************** tarjan ***************************************/.
2020-05-30 11:15:04
947
原创 【open vSwitch】Ubuntu和CentOS7安装ovs2.9.2
由于因为ovs和floodlight的版本匹配问题,走了不少冤枉路。在此记一次centos下安装ovs2.9.2的过程,以备不时之需(Ubuntu下用命令apt安装是最省事的,编译安装对于新手容易踩雷)。
2020-05-13 10:49:20
531
原创 Java命令运行class文件,提示找不到文件或无法加载类的解决办法
使用echo打印CLASSPATH:echo $CLASSPATH缺少当前路径,修改/etc/profileexport CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib然后source /etc/profile使之生效使用java命令即可运行.class文件...
2019-12-29 16:49:04
1346
原创 leetcode 46. Permutations
思路一:迭代法class Solution { public List<List<Integer>> permute(int[] nums) { List<List<Integer>> ans = new LinkedList<>(); List<Integer&g...
2019-12-04 15:11:38
111
原创 leetcode287:Find the Duplicate Number
因为有时间复杂度和空间复杂度的限制,不能用集合和排序的方法,此处用循环检测的方法,存在唯一重复的数,数的范围在1——n,那么存在指向相同数字的索引(环的入口处),利用环检测的方法找出环的入口位置。class Solution { public int findDuplicate(int[] nums) { int slow = 0; int fas...
2019-11-19 09:04:59
137
原创 二叉树的中序遍历——迭代法
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */class Solution { p...
2019-11-17 13:52:44
206
原创 TOP K frequent-elements
class Solution { public List<Integer> topKFrequent(int[] nums, int k) { List<Integer> list = new LinkedList<>(); Queue<Map.Entry<Integer, Integer>>...
2019-11-16 15:12:55
151
原创 leetcode877:石子游戏
附上大佬的通用解法https://leetcode-cn.com/problems/stone-game/solution/jie-jue-bo-yi-wen-ti-de-dong-tai-gui-hua-tong-yong/
2019-08-19 16:49:14
121
原创 堆、堆排序
完全二叉树完全二叉树与数组的对应关系:在数组中,下标为i的节点,其左孩子在2*i+1,右孩子在2*i+2,其父节点在(i-1)/2。也可以说,并不存在实际的完全二叉树,完全二叉树的实际结构可以理解为数组结构。由一个数组可以构造一个完全二叉树。堆堆就是完全二叉树,分为大顶堆和小顶堆。大顶小顶的含义是,整个树中的最大值或最小值为树的根节点,任意子树的根结点也是该子树的最大值或最...
2019-07-18 11:27:30
111
原创 快排:经典快排、随机快排
快速排序(Quicksort)是对冒泡排序的一种改进。快速排序由C. A. R. Hoare在1960年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。时间复杂度当数据有序时,以第一个关键字为基准分为两个子序列,前...
2019-07-18 11:17:10
405
原创 ThreadLocal类使用
class Channel { //消息发送通道 private static final ThreadLocal<Message> THREAD_LOCAL = new ThreadLocal<>(); public Channel() {} public static void setMessage(Message m) { ...
2019-07-15 16:01:19
162
原创 volatile关键字与sycronized区别
正常变量处理时候往往会经历如下步骤:1、获取变量的数据内容副本2、对变量副本进行计算3、将计算后的变量放回原来内存volatitle与同步的关系:volatile关键字主要修饰属性变量,sycronized在代码块和方法中使用; volatile避免内容拷贝,直接对内存进行操作,sycronized进行同步; volatile要与sycronized一起使用。...
2019-07-13 10:24:22
818
原创 java多线程——生产者和消费者
使用同步方法来保证数据的一致性,使用wait() 和 notify() 、notifyAll()方法来解决重复操作。public class Test { public static void main(String[] args) { Message msg = new Message(); Producer producer = new Prod...
2019-07-13 10:05:05
176
原创 如何理解T extends Comparable
<T extends Comparable<T>> 和 <T extends Comparable<? super T>> 有什么不同<T extends Comparable<T>>类型 T 必须实现 Comparable 接口,并且这个接口的类型是 T。只有这样,T 的实例之间才能相互比较大小。例如,在实际调用时若...
2019-07-09 15:16:46
760
原创 leetcode---前K个高频元素
堆排序class Solution { public List<Integer> topKFrequent(int[] nums, int k) { // 使用字典,统计每个元素出现的次数,元素为键,元素出现的次数为值 HashMap<Integer,Integer> map = new HashMap(); ...
2019-07-09 14:32:31
244
1
原创 leetcode---根据字符出现频率排序
class Solution { public String frequencySort(String s) { Map<Integer,List<Character>> map = new HashMap<>(); //排序 char[] chars = s.toCharArray(); A...
2019-07-08 19:59:22
186
原创 初识java多线程
1. 线程的3种创建方式(1) 继承Thread类,重写run()方法public class FirstThread extends Thread { private int i ; public void run(){ for(i = 0; i < 100; i++){ System.out.println(getName...
2019-07-05 10:45:01
148
原创 unbuntu18.04下安装qq和微信(踩了很多坑后,亲测有效)!
安装deepin-wine环境01、在线安装,通过执行以下命令可以安装最新Release版本的deepin-wine-ubuntu。wget -qO- https://raw.githubusercontent.com/wszqkzqk/deepin-wine-ubuntu/master/online_install.sh | bash -e02、本地安装,通过git clone...
2019-07-01 11:27:58
2546
6
原创 ubuntu18下安装openJDK及tomcat9
OpenJDK安装sudo apt install default-jdktomcat安装将压缩包复制到/opt/tomcat, 解压sudo tar -zxvf apache-tomcat-9.0.16.tar.gz在/opt/下设置执行权限sudo chmod -R 755 ./tomcat测试cd /opt/tomcat/apache-tomcat-9.0.1...
2019-06-30 10:57:10
942
原创 链表——归并排序
链表——归并排序/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode s...
2019-06-12 14:30:02
147
原创 Spring入门(4): 注解方式和schema方式实现AOP
JoinPoint jp 获取参数信息,用于注解和schema方式注解方式实现AOP自动获取注解:<aop:aspectj-autoproxy></aop:aspectj-autoproxy>//jp可以获得所有参数@Aspect@Component("annotation")public class LogAnnotation {@Be...
2019-06-10 14:09:51
445
原创 IDEA Mybatis入门
先要按照Person类建数据库,并插入数据Person类package dao;public class Person { private int id; private String name; private int age; public Person(){} public Person(int id, String name, i...
2019-04-17 23:35:13
297
原创 Client does not support authentication protocol requested by server; consider upgrading MySQL client
访问权限的问题:登录MySQL 修改USE mysql;ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';FLUSH PRIVILEGES;
2019-04-17 23:28:49
144
openflowj-3.3.0-SNAPSHOT-sources.jar
2019-12-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人