自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

超超级钢铁侠

每天进步一点点

  • 博客(33)
  • 收藏
  • 关注

转载 我是一只IT小小鸟(转载)

转载一篇激励我从大一就开始认真践行的文章,对我的影响巨大,巨大,巨大,整个大学,都是按照这篇文章这样学习的,希望能够帮助到更多的人。 下面是文章内容:引子:一件小事影响了我一生   大学前:数理化,好老爸   大一~大二上:极端自负,极度自卑   专业选择的失意让我暂时迷失了自己   我开始一行行敲经典书上的程序样例代码   大二下:两个榜样,三个要求   大三:深度迷茫,深入

2016-10-30 09:03:03 686

原创 剑指offer(13)-二叉树中和为某一值的路径

题目:输入一棵二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。二叉树结点的定义如下:struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : va

2016-10-23 22:09:18 713

原创 剑指offer(12)-二叉搜索树的后序遍历序列

题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历序列的结果,如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。经典的问题,二叉树的题目很多都是用递归来解决。注意到二叉查找树的后序序列的最后一个数为根结点数据,它应该比左孩子大,比右孩子小,根据这个特点递归地检查数组中是否所有元素都满足这个特点。下面总结几种写法(均通过了所有测试用例)。递归基本写法:cla

2016-10-21 22:55:39 259

原创 深入理解Java虚拟机-(1)引用计数算法

Java虚拟机

2016-10-21 16:20:32 1108

原创 新标准日本语中级下(第6单元)笔记

笔记大法好! 1、中国と日本とは一衣帯水の隣国です,一帯とは着物の帯(おび) のことで,帯のような狭い川や海を隔てて隣り合っていることを言います。2、”以降”侧重表示自那以后,”以来”(某个事情之后,一直。。。)侧重表示现在的事态何时开始。3、だからこそーー正因为如此,如:偶然ではなく,努力したか教員試験に合格しだんだ。4、〜てもみなった・说话人强烈地表明没做某事,如;思ってもみない5、でしたら,

2016-10-18 23:27:44 717

转载 平衡二叉树复习

遇见一个BST的问题,然而已经忘得差不多了,参考博文敲一遍,复习一下。。。using namespace std;template<class T>class TreeNode{public: TreeNode() :lson(NULL), rson(NULL), freq(1) {} T data; unsigned int freq; TreeNode* l

2016-10-18 19:49:00 211

原创 剑指offer(11)-从上往下打印二叉树

题目:从上往下打印出二叉树的每个结点,同一层的结点按从左到右的顺序打印。二叉树结点的定义如下:struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) {

2016-10-17 23:22:55 230

原创 Verilog 编程实验(6)-4位移位寄存器的设计与实现

原理图:Implementation part:module ShiftRegister(q3,data_in,clk,clr);output[3:0] q3;input[3:0] data_in;input clk;input clr;reg[3:0] q3,q2,q1,q0;always@(posedge clk or posedge clr) if (clr == 1)

2016-10-17 01:18:59 29796 4

原创 剑指offer(12)-栈的压入弹出序列

题目:输入两个整数序列,第一个序列表示栈的压入序列,请判断第二个序列是否为栈的弹出顺序,假设压入栈的所有数字均不相等。例如序列1、2、3、4、5是某栈的压入序列,4、3、5、1、2就不可能是该压栈序列的弹出序列。书中用双栈的方法来解决,这个方法比较麻烦也不容易理解,用一个栈就好了,只要将栈序列一个一个压入, 检测栈中是否为空,若空,说明出栈队列可由原数列进行栈操作得到。否则,说明出栈队列不能由原数

2016-10-16 17:29:42 292

原创 Verilog 编程实验(5)-3-8线译码器的设计与实现

3-8线译码器真值表:Implementation part:module Decoder38(data_in,data_out,enable); input [2:0] data_in; input enable; output [7:0] data_out; reg [7:0] data_out;always @(data_in) begin

2016-10-16 00:50:37 36716 2

原创 剑指offer(11)-包含min函数的栈

题目:定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。用双栈来解决,第一个栈用作普通栈,存放用于出栈入栈的数据,以及执行top()操作,第二个栈用于存放当前最小值(栈顶).class Solution {public: stack<int> smin; stack<int> sdata; void push(int value) { sda

2016-10-15 23:00:32 253

原创 剑指offer(10)-打印二叉树的镜像

题目:请完成一个函数,输入一个二叉树,该函数输出它的镜像。二叉树的结点定义如下:struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { }}

2016-10-14 22:20:37 323

原创 剑指offer(9)-树的子结构

题目: 输入两颗二叉树A和B,判断B是不是A的子结构,二叉树结点的定义如下:struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { }};

2016-10-12 22:29:40 318

原创 HashMap简单复习

在实验楼上敲了一个简单的例子复习一下HashMap:package com.shiyanlou.course;import java.util.*;public class PhoneBookByMap { private static HashMap<String,String> initPhoneBook(HashMap<String,String> phonebook) {

2016-10-11 21:31:53 274

原创 剑指offer(8)-合并两个有序链表

题目: 输入两个递增排序的有序链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的,链表结点的定义如下:struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { }};简单地用递归实现,主要是注意写出递归出口条件,细

2016-10-11 19:17:28 371

原创 Verilog 编程实验(4)-7位译码器的设计与实现

数码管7位译码器的真值表:Implementation part:module Seven_Decoder_B(data_in,data_out,EN);input [3:0] data_in ;input EN ;output [6:0] data_out ;reg [6:0] data_out ;always @(data_in or EN )begindata_out = 7'b111

2016-10-10 23:57:50 10095

原创 Verilog 编程实验(3)-二位比较器的设计与实现

二位比较器的真值表: Implementation part:module comp2bit(a,b,a_eq_b,a_gt_b,a_lt_b);input [1:0]a,b;output a_eq_b,a_gt_b,a_lt_b;assign a_eq_b = (a == b)? 1'b1: 1'b0;assign a_gt_b = (a > b)? 1'b1: 1'b0;assign

2016-10-10 22:54:51 17100 3

原创 Verilog 编程实验(2)-4位2选1多路选择器的设计与实现

4位2选1多路选择器: Implementation part://////////////////////////////////////////////////////////////////////////////////module MUX_4bits_2_choose_1(input wire [3:0]a,input wire [3:0]b,input wire s,outpu

2016-10-10 22:41:39 13575

原创 鸟哥的Linux私房菜(2)

1.stty命令自定义按键功能(cool!).2.利用last输出登录信息,将输出的数据仅取帐号加以排序: last | cut -d ’ ’ -f1 | sort(熟悉管线命令|的使用),要将排序后的资料不重复显示(并且显示登录次数): last | cut -d ’ ’ -f1 | sort | uniq -c 想要知道输出数据有多少行的话使用wc(返回结果为行,字数,字符数);3.gre

2016-10-09 23:57:18 401

原创 剑指offer(7)-反转一个链表

题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点,链表结点定义如下:struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { }很经典的问题,具体思路基本上所有同学都知道了,定义3个指针,分别指向当

2016-10-09 21:59:10 399

原创 Thinking in Java(6)-private constructors

If you don’t want anyone else to hava access to your class,you can make all the constructors private,thereby preventing anyone but you,inside a static member of the class,from creating an object of tha

2016-10-08 15:23:24 361

原创 剑指offer(6)-链表中倒数第k个结点

题目:输入一个结点,输出链表中倒数第k个结点,规定尾结点为倒数第一个结点。 本题相对比较简单,只是要考虑到程序鲁棒性,处理好各种情况才能答得比较好,用双指针法,第一个先走到k-1个结点的时候第二个指针才开始走,等到第一个指针->next为NULL时,第二个指针刚好在倒数第k个位置。 贴出在牛客网上通过的代码:class Solution {public: ListNode* FindK

2016-10-07 23:38:24 242

原创 操作系统实验-系统调用

参考这篇文章在实验楼做了一下系统调用的操作系统实验课,基本把流程走了一遍,对系统调用的理解更加深刻了一点,实验楼真是个良心IT教程网站,对增强动手能力很有帮助,可以加深对书本的理解,强烈推荐,以后应该会花很多时间在实验楼练习项目。 加油!

2016-10-07 11:43:37 792

原创 剑指offer(5)-调整数组顺序使得奇数位于偶数之前

题目:输入一个整数数组,实现一个函数来调整数组中的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。拿到题目之后,暴力方法很快就可以想到,只要从头遍历数组,遇到偶数后就提取出来,把后面的元素向前移动一位,将取出的数放到数组最后的空位就好了,这样做的话遍历数组的寻找偶数需要O(n)时间,移动数组又需要O(n)时间,总的时间就是O(n^2),意义不大。一种稍微复杂一点的方法有可能想到,用

2016-10-06 22:53:10 255

转载 C/C++/Java 中static对比

术语“static”有段不寻常的历史。起初,在C中引入关键字static是为了表示退出一个块后仍然存在的局部变量在C中static实际通常有两种含义:一是在声明局部变量时,表示该局部变量的值在函数调用结束后不消失而保留原值,即其占用的存储单元不释放,在下一次该函数调用时,该变量已有的值,就是上一次函数调用结束时的值;另一种含义是表示不能被其他文件访问的全局变量和函数。后来,C++重用了这个关键字,并

2016-10-06 10:21:50 726

原创 编译原理学习-Windows下Lex和yacc使用

在windows上初步配置和使用Lex和yacc的步骤如下,首先下载flex和bison。网址是http://pan.baidu.com/s/1dDlfiW5 并解压。 为了方便,如果安装了VS2015或其它版本,先在cmd下配置好cl .exe,以便与编译生成的c文件,配置方法是: 1.在cmd下输入set,看看VS的配置,如我的电脑上:......USERDOMAIN_ROAMINGPRO

2016-10-05 11:10:04 6920 1

原创 剑指offer(4)-O(1)时间删除链表结点

题目:给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点,链表结点与 函数的定义如下:struct ListNode{ int m_nValue; ListNode* m_pNext;};void DeleteNode(ListNode** pListHead, ListNode* pToBeDeleted);按照常规做法,从头结点一个一个顺序查找肯

2016-10-04 18:17:23 208

原创 剑指offer(3)-打印1到最大的n位数

题目:输入数字n,按顺序打印出从1到最大的n位十进制数,如输入3则打印出1、2、3到999。 看到题目,第一想法是从1到n 位最大的十进制数循环打印,分分钟写出类似如下的代码:void Print1ToNDigits(int n){ int sum = 0; for (int i = 0; i < n; i++) { sum += 9 * pow(10,

2016-10-03 16:46:47 232

原创 C++ Primer Plus(再谈重载-一个矢量类)

跟着书敲了一个矢量类,记录如下: Vector要实现矢量的基本运算,最重要的是为后面实现Drunkard Walk problem打下基础,从这个简单的例子中体会一些OOP思想的运用。//vect.h#ifndef VECTOR_H#define VECTOR_H#include<iostream>namespace VECTOR{ class Vector { publ

2016-10-02 14:22:08 1343

原创 深入浅出MySQL(5)-基本数据类型

1.整型数据。 创建table t1,指定数值宽度为int和int(5):mysql> create table t1 (id1 int,id2 int(5));Query OK, 0 rows affected (0.31 sec)mysql> desc t1;+-------+---------+------+-----+---------+-------+| Field | Type

2016-10-01 21:52:52 274

原创 深入浅出MySQL(4)-子查询

在查询时,有时查询的条件是另一个select的结果,这时就需要使用子查询,子查询的关键字有in、not in、=、!=、exists、not exists等。mysql> select * from dept;+--------+----------+| deptno | deptname |+--------+----------+| 1 | tech ||

2016-10-01 21:25:42 272

原创 刷题笔记(计算机网络)

1. RIP协议是一种内部网关协议(IGP),是一种动态路由选择协议,用于自治系统(AS)内的路由信息的传递。RIP协议基于距离矢量算法(DistanceVectorAlgorithms),使用“跳数”(即metric)来衡量到达目标地址的路由距离。距离就是通往目的站点所需经过的链路数,取值为1~15,数值16表示无穷大。 对于小型网络,RIP就所占带宽而言开销小,易于配置、管理和实现,并且R

2016-10-01 17:26:20 2327

原创 刷题笔记(Linux)

以后将各个地方的零散的刷题笔记稍微记录一下,说不定工作时能用到呢。 1./etc/mtab文件的作用:记载的是现在系统已经装载的文件系统,包括操作系统建立的虚拟文件等;而/etc/fstab是系统准备装载的 /etc/fstab文件的作用 :记录了计算机上硬盘分区的相关信息,启动 Linux 的时候,检查分区的 fsck 命令,和挂载分区的 mount 命令,都需要 fstab 中的信息,来正确

2016-10-01 17:24:43 562

空空如也

空空如也

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

TA关注的人

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