- 博客(352)
- 资源 (8)
- 收藏
- 关注
原创 ARM 汇编指令(更新中)
1、str 指令 **- 格式** STR{条件} 源寄存器,<存储器地址> STR指令用亍从源寄存器中将一个32位的字数据传送到存储器中。 **- 案例**STR R0,[R1],#8 ;将R0中的字数据写入以R1为地址的存储器中,并将新地址R1+8写入R1。STR R0,[R1,#8] ;将R0中的字数据写入以R1+8为地址的存储器中。”2、ORR指令(逻辑 或) **- 格
2016-07-11 22:51:05 817
转载 右左法则解决复杂声明(转)
现在很多IT公司的面试题都或多或少会有复杂声明的题,有一点C基础的人或许能够瞎搬乱套做对,但这样你肯定不爽,一方面显得不专业,有点自欺欺人的感觉,另一方面如果遇到更加复杂的声明就彻底傻了,本篇主要就一些复杂的声明介绍一种方法,这个有些书上也有介绍,比如《C专家编程》。个人觉得这个没有必要深究,只做了解即可,很多时候编程都很难用到,不过这也是大神和一般程序员的区别。右左法则不是C标准里面的内容,它是从
2016-06-23 16:27:29 599
原创 Linux grep基本用法与正则表达式
本文只是对于常用的grep配合正则表达式基本用法进行简单小结,如果想仔细的学习正则表达式,请访问鸟哥Linux私房菜,台湾同胞的网站是繁体中文的,需要点儿耐心。1、grep命令功能:输入文件的每一行中查找字符串。基本用法:grep [-acinv] [--color=auto] [-A n] [-B n] '搜寻字符串' 文件名参数说明:-a:将二进制文档以文本方式处理-c:显示匹配次数-i
2016-05-16 16:50:52 83804 4
原创 Linux 下函数栈帧分析
1、关于栈对于程序,编译器会对其分配一段内存,在逻辑上可以分为代码段,数据段,堆,栈代码段:保存程序文本,指令指针EIP就是指向代码段,可读可执行不可写数据段:保存初始化的全局变量和静态变量,可读可写不可执行BSS:未初始化的全局变量和静态变量堆(Heap):动态分配内存,向地址增大的方向增长,可读可写可执行栈(Stack):存放局部变量,函数参数,当前状态,函数调用信息等,向地址减小的方
2016-05-11 16:51:37 8515 12
原创 2013 Office Word 编辑常用功能
1、Word 空格显示成点将word中所有空格显示成点,方便编辑 2、插入参考文献 一般参考文献在文中都要标注成带方括号的形式,例如“[1]”。这里交给大家一个方法一键搞定。 点击开始→替换,在查找内容处填写^e,替换处填写[^&]即可。 替换后如下图所示。3、页眉设置要求:页眉标注从论文主体部分(绪论、正文、结论)开始。页眉分奇、偶页标注,其中偶数页的页眉为 华南理工大学博士/硕士
2016-03-29 10:50:15 4863
转载 浮点型数据存储方式
C语言和C#语言中,对于浮点类型的数据采用单精度类型(float)和双精度类型(double)来存储,float数据占用32bit,double数据占用64bit,我们在声明一个变量float f= 2.25f的时候,是如何分配内存的呢?如果胡乱分配,那世界岂不是乱套了么,其实不论是float还是double在存储方式上都是遵从IEEE的规范的,float遵从的是IEEE R32.24 ,而dou
2016-03-09 19:58:22 1034
原创 结构体大小计算之位域字段
类和结构可包含比整型类型占用更少存储空间的成员。这些成员被指定为位域。位域成员声明符规范的语法如下:语法declarator : constant-expression下面的示例声明包含位域的结构:// bit_fields1.c
2016-02-26 21:39:58 5058 3
原创 OJ 系列之【中级】双链表基本操作
#include <stdlib.h>#define null 0#define MAXSIZE 50struct strlnode { int data; struct strlnode *plast; struct strlnode *pnext;};void create(struct strlnode **p, int x) /*创建双链表(表头节点)*/{
2016-02-22 10:38:10 929 1
转载 OJ 系列之简单错误记录(转)
摘要题目 描述: 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。 处理: 1、 记录最多8条错误记录,循环记录,对相同的错误记录(净文件名称和行号完全匹配)只记录一条,错误计数增加; 2、 超过16个字符的文件名称,只记录文件的最后有效16个...题目描述:开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。处理:
2016-02-21 13:04:22 897
原创 OJ 系列之重复的电话号码(C_C++)
解题思路:首先建立题目要求的映射关系,其次将输入的字符串进行提取,转换成电话号码,利用map容器的有序性质进行存储电话号码,电话号码自动有序,然后按照题目要求进行输出即可。#include <stdlib.h>#include "PhoneBookProcess.h"/*功能: 检查是否有两个或多个公司拥有相同的电话号码,并统计输出输入参数: inFileName - 包含个性电话号码个数与
2016-02-21 10:34:26 2102
原创 OJ 系列之整数排序
1、问题描述实现输入一组大于等于0的整数, 根据从小到大的顺序排序后输出,排序后有连续数时, 只输出连续数中最小和最大的两个数。 一组大于等于0的整数,不考虑非法输入,各个整数之间以逗号(“,”)分隔, 输入字符串的总长度小于等于100个字节。排序后的值,各个整数之间以空格分隔。2、解题思路1、首先从输入字符串inputStr按规律取出数字,然后存储到一个数组中(大小为50,初始值全部为
2016-01-25 19:17:27 1728
原创 OJ 系列之常规练习题(二)
1、坐标移动2、周期串问题3、矩阵相乘24、最大公约数5、整数相除6、字符串加解密7、水仙花8、阿姆斯特朗数9、大数相乘10、整数分隔
2016-01-22 21:22:24 1147
原创 OJ 系列之字节流解析
1、问题描述根据数值占用BIT数,按顺序从输入字节流中解析出对应数值,解析顺序按输入数组astElement索引升序。/*输入:字节数组长度uiIutputLen为2;字节数组aInputByte[2]为{0x62, 0x80},对应二进制为“01100010 1 000 0000”;解析数值个数uiElementNum为2;数值[0]的值占4个bit,即astElement[0].uiEleme
2016-01-22 15:49:02 6810
原创 OJ 系列之24点游戏算法
1、问题描述2、解题思路没找到好的办法,采用穷举法。所谓穷举法就是列出4个数字加减乘除的各种可能性。我们可以将表达式分成以下几种:首先我们将4个数设为a,b,c,d,,将其排序列出四个数的所有排序序列组合(共有A44=24种组合)。再进行符号的排列表达式,其中算术符号有加、减、乘、除。其中有效的表达式有:首先列出所有有效的表达式,其中a,b,c,d的范围是1到10。下面我介绍下穷举法的主要实现,我们知道要实现24点的
2016-01-21 17:11:01 2604
原创 OJ 系列之常规练习题(一)
1、求M的n次方最后三位【问题描述】 2、向升序单向链表中插入一个节点3、删除链表中的重复节点、剩余节点逆序输出4、二维数组的列排序5、取给定正整数的指定bit位开始的指定长度的数据6、兔子产子7、报文转换8、计算二进制数的0的个数9、简单密码破解10、密码验证合格程序
2016-01-20 09:50:56 1547
原创 OJ 系列之IP地址判断有效性
1、问题描述判断输入的字符串是不是一个有效的IP地址 详细描述: 请实现如下接口 bool isIPAddressValid(constchar* pszIPAddr) 输入:pszIPAddr 字符串 输出:true 有效的IP地址,false,无效的IP地址 约束 输入IP为XXX.XXX.XXX.XXX格式 字符串两端含有空格认为是合法IP 字符串中间含有空格认为是
2016-01-17 14:13:25 1471
原创 OJ 系列之最大递减数
1、问题描述给出一个非负整数,找到这个非负整数中包含的最大递减数。一个数字的递减数是指相邻的数位从大到小排列的数字。 如: 95345323,递减数有:953,95,53,53,532,32, 那么最大的递减数为953。 如果输入的数字为负数,返回-1。2、解题思路1、首先将非负整数每位数字压入vector数组中,其顺序和原数字从左到右一致;2、找出递减数(从大到小排列);3、从所有的递减
2016-01-16 21:44:45 2148
原创 OJ 系列之整型字符串排序
1、问题描述给定字符串内有很多正整数,要求对这些正整数进行排序,然后返回排序后指定位置的正整数 排序要求:按照每个正整数的后三位数字组成的整数进行从小到大排序 1)如果不足三位,则按照实际位数组成的整数进行比较 2)如果相等,则按照输入字符串中的原始顺序排序 说明(以下内容考生无须检查,调用者保证): 1) 字符串以’\0’结尾,仅包含数字、空格 2) 字符串内正整数之间以单个空格分
2016-01-16 20:37:47 2745
原创 OJ 系列之删除字符串中出现次数最少的字符
删除字符串中出现次数最少的字符描述:实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。题目类别:字符串难度:中级分数: 运行时间限制:10 Sec内存限制:12
2016-01-15 16:41:17 1448
原创 OJ 系列之字符串分割
问题描述连续输入字符串(输出次数为N,字符串长度小于100),请按长度为8拆分每个字符串后输出到新的字符串数组,长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。例如:输入:abc 12345789输出:abc00000 12345678 90000000接口函数设计如下:/***********************
2016-01-15 15:18:48 1723
原创 OJ 系列之字符串基本操作
字符串操作C语言提供了较多的库函数,本题目要求代码中不能使用字符串操作相关的库函数,可以使用malloc。用例中可以使用中提供的库函数。实现接口,每个接口实现1个基本操作:unsignedintstrlenth(char*s):计算字符串的长度。voidstrcopy(char**target,char*source):字符串拷贝,从source拷贝到target中。intstrcompare(char*s,char*t):字符串比较,比较的原则:对两个字符串的每个字符从左到右逐个比
2016-01-15 14:09:52 1585
原创 OJ 系列之可怕的n的阶乘
1、问题描述计算阶乘n!是一件可怕的事情,因为当n并不是很大时,n!将是一个很大的值。例如13! = 6227020800,已经超过了我们常用的unsigned int类型的取值范围。请设计一个程序,使其可以计算100以内的数的阶乘,结果用字符串的形式输出 详细描述:接口说明原型: void CalcNN(int n, char *pOut) 输入参数: int n 需要计算的阶乘数 输出
2016-01-15 14:04:59 2134 2
原创 [LeetCode-111] Minimum Depth of Binary Tree (二叉树最小深度)
Given a binary tree, find its Minimum depth.The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.本题就是求解二叉树的深度: 递归解法: (1)如果二叉树为空
2016-01-12 20:56:57 471
原创 [LeetCode-119] Pascal's Triangle II(帕斯卡三角形第K行数据)
Given an index k, return the kth row of the Pascal's triangle.For example, given k = 3,Return [1,3,3,1].Note:Could you optimize your algorithm to use only O(k) extra space?主要找到第K行数据的规律
2016-01-10 21:30:55 1239
原创 [LeetCode-118] Pascal's Triangle(帕斯卡三角形)
Given numRows, generate the first numRows of Pascal's triangle.For example, given numRows = 5,Return[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]Subscribe to see
2016-01-10 21:05:53 1598
原创 [LeetCode-86] Partition List (链表数据分区)
Given a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x.You should preserve the original relative order of the nodes in each of
2016-01-08 10:46:04 790
原创 一步一步学习 Linux 驱动之 platform 机制(tiny210 按键驱动)
1、platform device/*** @Author: ZP1015 ** @Copyright:SCUT.* * @Function:Platform device driver for button * * @Creat:2015-06-10** @Modify:2015-12-29**/#include <linux/kernel.h>#include <linu
2015-12-29 14:48:22 1148
原创 Linux 设备驱动常用函数解析(更新中)
1、MKDEVMKDEV(int major,int minor)/** * MKDEV() - 将主设备号和次设备号转换成dev_t类型(32位) * @major: 主设备号 * @minor: 次设备号 * Return value:dev_t类型 *//*函数实现*/#define MINORBITS 20#define MKDEV(ma,mi) (((ma) <<
2015-12-21 14:30:16 1942
原创 成功移植 SSH 服务到 ARM 开发板上
SSH协议族可以用来进行远程控制, 附加的SFTP协议可轻松实现在计算机之间传送文件。而实现此功能的传统方式,如telnet(终端仿真协议)、 rcp ftp、 rlogin、rsh都是极为不安全的,因为它们使用明文传送密码。OpenSSH常常被误认以为与OpenSSL有关联,但实际上这两个计划的有不同的目的,不同的发展团队,名称相近只是因为两者有同样的软件发展目标──提供开放源代码的加密
2015-12-17 17:05:30 11982 1
转载 Ubuntu 设置静态 IP(转)
1. 找到文件并作如下修改:sudo vim /etc/network/interfaces修改如下部分:auto eth0iface eth0 inet staticaddress 192.168.1.127gateway 192.168.1.1 #这个地址你要确认下 网关是不是这个地址netmask 255.255.255.0network 192.168.1.
2015-12-17 10:45:15 579
原创 Linux MakeFile (编写、函数以及指定位置存放)
1、MakeFile 编写正如前面所说的,如果一个工程有3个头文件,和8个C文件,我们为了完成前面所述的那三个规则,我们的Makefile应该是下面的这个样子的。edit : main.o kbd.o command.o display.o \ insert.o search.o files.o utils.o cc -o edit main.o kbd.o command.o dis
2015-12-16 17:03:59 4741
原创 [LeetCode-28] Implement strStr(KMP 字符串匹配)
1、KMP算法的思想由D.E.Knuth、J.H.Morris和V.R.Pratt共同提出了一个改进算法,消除了Brute-Force算法中串s指针的回溯,完成串的模式匹配。时间复杂度为O(s.curlen+t.curlen),这就是Knuth-Morris-Pratt算法,简称KMP 算法。2、经典的next求解方法《大话数据结构》 P141页
2015-11-20 17:59:41 1382
转载 算法学习之字符串匹配 KMP 算法(一)(原理介绍)
下面,我用自己的语言,试图写一篇比较好懂的KMP算法解释。 1. 首先,字符串"BBC ABCDAB ABCDABCDABDE"的第一个字符与搜索词"ABCDABD"的第一个字符,进行比较。因为B与A不匹配,所以搜索词后移一位。 2. 因为B与A不匹配,搜索词再往后移。 3. 就这样,直到字符串有一个字符,与搜索词的第一个字符相同为止。 4.
2015-11-18 21:41:14 525
原创 [LeetCode-205] Isomorphic Strings(同构字符串)
Given two strings s and t, determine if they are isomorphic.Two strings are isomorphic if the characters in s can be replaced to get t.All occurrences of a character must be replaced with anot
2015-11-16 22:32:50 541
原创 [LeetCode-69] Sqrt(x)(求解平方根)
Implement int sqrt(int x).Compute and return the square root of x.这道题一看到函数的定义int sqrt(int x)都是int就高兴了,直接二分吧。但是要注意,即使用long long都越界,还要用unsigned long long。最后返回值还要再检查一下。http://blog.csdn.net/
2015-10-29 21:17:33 553
原创 [LeetCode-50] Pow(x, n)(数值的整数次方)
Implement pow(x, n).Subscribe to see which companies asked this question【方法一】:1)最直观容易想到的方法就是用递归方法求n个x的乘积,注意考虑n的正负号,时间复杂度为O(n)double pow(double x, int n){ if(n==0) return 1.0; if(n<0
2015-10-29 20:19:39 4162 1
原创 [LeetCode-66] Plus One
Given a non-negative number represented as an array of digits, plus one to the number.The digits are stored such that the most significant digit is at the head of the list.【分析】:题意:一个整数按位存储于一个i
2015-10-25 11:02:38 410
原创 [LeetCode-204] Count Primes(0~n 有多少个质数—4种方法求解)
埃拉托色尼筛选法(1)先把1删除(现今数学界1既不是质数也不是合数)(2)读取队列中当前最小的数2,然后把2的倍数删去(3)读取队列中当前最小的数3,然后把3的倍数删去(4)读取队列中当前最小的数5,然后把5的倍数删去(5)如上所述直到需求的范围内所有的数均删除或读取
2015-10-23 15:18:31 2579
原创 [LeetCode-38] Count and Say
The count-and-say sequence is the sequence of integers beginning as follows:1, 11, 21, 1211, 111221, ...1 is read off as "one 1" or 11.11 is read off as "two 1s" or 21.21 is read off as
2015-10-23 09:57:08 514
GP接口函数描述和入参解析
2022-05-04
Linux 设备模型之kobject
2015-06-08
字符设备LED驱动程序
2015-04-14
Windows下基于socket多线程并发通信的实现
2015-04-07
采温显示存储报警模块
2013-04-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人