随笔分类 -  其他

摘要:在C/C++中,64为整型一直是一种没有确定规范的数据类型。现今主流的编译器中,对64为整型的支持也是标准不一,形态各异。一般来说,64位整型的定义方式有long long和__int64两种(VC还支持_int64),而输出到标准输出方式有printf(“%lld”,a),printf(“%I64d”,a),和cout << a三种方式。本文讨论的是五种常用的C/C++编译器对64位整型的支持,这五种编译器分别是gcc(mingw32),g++(mingw32),gcc(linux i386),g++(linux i386),Microsoft Visual C++ 6.0。可惜 阅读全文

posted @ 2012-04-05 12:05 yming0221 阅读(186) 评论(0) 推荐(0)

摘要:原创作品,转载请标明http://blog.csdn.net/yming0221/article/details/7422336已知某二叉树的先序序列和中序序列,编程计算并输出该二叉树的后序序列。输入说明:仅一组数据,分为两行输入,第一行表示指定二叉树的先序序列,第二行表示该二叉树的中序序列,序列元素均为大写英文字符,表示二叉树的结点。输出说明:在一行上输出该二叉树的后序序列。输入样本:ABDGCEFHDGBAECHF输出样本:GDBEHFCA简单 源码如下:#include <stdio.h> #include <string.h> #define MAX 101 c 阅读全文

posted @ 2012-04-02 20:44 yming0221 阅读(530) 评论(0) 推荐(0)

摘要:本算法中引用的是由Tomohiko Sakamoto 提供的简洁函数代码代码如下:int dayofweek(int y, int m, int d) /* 0 = Sunday */ { static int t[] = {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4}; y -= m < 3; return (y + y/4 - y/100 + y/400 + t[m-1] + d) % 7; } AC代码如下:#include <stdio.h> int dayofweek(int y, int m, int d) /*... 阅读全文

posted @ 2012-03-27 19:41 yming0221 阅读(228) 评论(0) 推荐(0)

摘要:由于题目是相机拍摄的,难免不清楚。Problem A#include <stdio.h> int val[1001]; void Bubble_Sort(int a[],int n) { int i,j,tmp; for(i = 0;i < n;i++) { for(j = i + 1;j < n;j++) if(a[i] > a[j]) tmp = a[i],a[i] = a[j],a[j] = tmp; } } int main() { int tmp; int cnt = 0; int i,... 阅读全文

posted @ 2012-03-20 20:58 yming0221 阅读(210) 评论(0) 推荐(0)

摘要:题目1184:二叉树遍历时间限制:1 秒内存限制:32 兆特殊判题:否提交:612解决:281题目描述:编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储)。例如如下的先序遍历字符串:ABC##DE#G##F###其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。输入:输入包括1行字符串,长度不超过100。输出:可能有多组测试数据,对于每组数据,输出将输入字符串建立二叉树后中序遍历的序列,每个字符后面都有一个空格。每个输出结果占一行。样例输入:abc##de#g##f###样例输出:c b e g d f 阅读全文

posted @ 2012-03-13 19:03 yming0221 阅读(183) 评论(0) 推荐(0)

摘要:题目1172:哈夫曼树时间限制:1 秒内存限制:32 兆特殊判题:否提交:919解决:272题目描述:哈夫曼树,第一行输入一个数n,表示叶结点的个数。需要用这些叶结点生成哈夫曼树,根据哈夫曼树的概念,这些结点有权值,即weight,题目需要输出所有结点的值与权值的乘积之和。输入:输入有多组数据。每组第一行输入一个数n,接着输入n个叶节点(叶节点权值不超过100,2<=n<=1000)。输出:输出权值。样例输入:5 1 2 2 5 9样例输出:37来源:2010年北京邮电大学计算机研究生机试真题观察后不难发现,最后的结果就是所有节点(除掉跟节点)的节点之和。#include < 阅读全文

posted @ 2012-03-13 17:33 yming0221 阅读(150) 评论(0) 推荐(0)

摘要:参考资料:西安电子科技大学 教学课件一、16位处理器,8086/8088 CPU1、第一代16位处理器2、第一次实现了指令级流水3、采用分段管理机制,扩大了寻址范围,使程序可以浮动分配。4、只有整数运算指令。可以配合协处理器8087和IO处理器8089使用,来增强功能。5、8088与8086内部结构相似,只是8088有8位的外部数据总线。内部结构图如下:其内部寄存器的结构图如下:其中程序状态字(PSW)中几个常用的标志位的含义如下:CF:进位标志ZF:结果为零标志SF:最高位为零标志OF:溢出标志80286INTEL 1982年推出80286芯片,该芯片相比8086和8088有了飞跃式发展,虽 阅读全文

posted @ 2012-03-13 14:15 yming0221 阅读(466) 评论(0) 推荐(0)

摘要:2月2113:00 北京北清视通信息技术有限公司,北京海淀区上地信息路28号信息大厦A座5层。嵌入式开发15:00北京中电智通科技有限公司,海淀区上地七街 国际创业园C座(浪潮大厦)718室 (坐地铁在西二旗站下车)LINUX工程师2月2210:00北京文安科技发展有限公司,五道口东升大厦905A(五道口城铁西200米)公共汽车五道口站下车即是。C/C++开发工程师14:00中标软件,北京市海淀区北四环西路9号银谷大厦20层。15:30北京奥维视讯科技有限责任公司,北京市昌平区回龙观龙禧苑二区16号楼2-502(研发部)。嵌入式驱动研发工程师2月2310:30北京惠友旺科技有限公司,宣武区.. 阅读全文

posted @ 2012-02-21 11:00 yming0221 阅读(121) 评论(0) 推荐(0)

摘要:devfs、sysfs、udev介绍一、devfslinux下有专门的文件系统用来对设备进行管理,devfs和sysfs就是其中两种。在2.6内核以前一直使用的是devfs,devfs挂载于/dev目录下,提供了一种类似于文件的方法来管理位于/dev目录下的所有设备,我们知道/dev目录下的每一个文件都对应的是一个设备,至于当前该设备存在与否先且不论,而且这些特殊文件是位于根文件系统上的,在制作文件系统的时候我们就已经建立了这些设备文件,因此通过操作这些特殊文件,可以实现与内核进行交互。但是devfs文件系统有一些缺点,例如:不确定的设备映射,有时一个设备映射的设备文件可能不同,例如我的U盘可 阅读全文

posted @ 2012-01-13 13:09 yming0221 阅读(240) 评论(0) 推荐(0)

摘要:简介对于一个规模为n的问题,若该问题可以容易地解决(比如说规模n较小)则直接解决,否则将其分解为k个规模较小的子问题,这些子问题互相独立且与原问题形式相同,递归地解这些子问题,然后将各子问题的解合并得到原问题的解。这种算法设计策略叫做分治法。分治法的基本思想任何一个可以用计算机求解的问题所需的计算时间都与其规模有关。问题的规模越小,越容易直接求解,解题所需的计算时间也越少。例如,对于n个元素的排序问题,当n=1时,不需任何计算。n=2时,只要作一次比较即可排好序。n=3时只要作3次比较即可,…。而当n较大时,问题就不那么容易处理了。要想直接解决一个规模较大的问题,有时是相当困难的。分治法的设计 阅读全文

posted @ 2012-01-02 22:24 yming0221 阅读(309) 评论(0) 推荐(0)

摘要:什么是进程的饥饿和饿死?在一个动态系统中,资源请求与释放是经常性发生的进程行为.对于每类系统资源,操作系统需要确定一个分配策略,当多个进程同时申请某类资源时,由分配策略确定资源分配给进程的次序。资源分配策略可能是公平的(fair),能保证请求者在有限的时间内获得所需资源;资源分配策略也可能是不公平的(unfair),即不能保证等待时间上界的存在。在后一种情况下,即使系统没有发生死锁,某些进程也可能会长时间等待.当等待时间给进程推进和响应带来明显影响时,称发生了进程饥饿(starvation),当饥饿到一定程度的进程所赋予的任务即使完成也不再具有实际意义时称该进程被饿死(starve to de 阅读全文

posted @ 2011-12-26 15:19 yming0221 阅读(581) 评论(0) 推荐(0)

摘要:实现如下:boolean flag[2]; int turn; void P0() { while(true) { flag[0]=true; turn=1; while(flag[1]&&turn==1) /* donothing*/ ; /*critical section*/ ; flag[0]=false; } } void P1() { while(true) { flag[1]=true; turn=0; while(flag[0]&&turn==0) ... 阅读全文

posted @ 2011-12-23 22:59 yming0221 阅读(673) 评论(0) 推荐(0)

摘要:复杂指令集计算机(CISC) 长期来,计算机性能的提高往往是通过增加硬件的复杂性来获得.随着集成电路技术.特别是VLSI(超大规模集成电路)技术的迅速发展,为了软件编程方便和提高程序的运行速度,硬件工程师采用的办法是不断增加可实现复杂功能的指令和多种灵活的编址方式.甚至某些指令可支持高级语言语句归类后的复杂操作.至使硬件越来越复杂,造价也相应提高.为实现复杂操作,微处理器除向程序员提供类似各种寄存器和机器指令功能外.还通过存于只读存贮器(ROM)中的微程序来实现其极强的功能 ,傲处理在分析每一条指令之后执行一系列初级指令运算来完成所需的功能,这种设计的型式被称为复杂指令集计算机(Comple. 阅读全文

posted @ 2011-11-18 23:18 yming0221 阅读(845) 评论(0) 推荐(0)

摘要:下面的代码是自己写的,难免有纰漏之处,发现请指正,谢谢。点击2011年北航计算机复试上机题第一题/*************************************************************************** Problem: 北航2011上机题1* Copyright 2011 by Yan* DATE:* E-Mail: yming0221@gmail.com************************************************************************/#include<stdio.h>i 阅读全文

posted @ 2011-10-21 13:03 yming0221 阅读(164) 评论(0) 推荐(0)

摘要:用整型,直接int a;a=a+(a+1)/2;相当于float a;a*1.5=a;ceil(a); 阅读全文

posted @ 2010-12-10 21:39 yming0221 阅读(168) 评论(0) 推荐(0)

摘要:qsort函数应用大全(转)七种qsort排序方法<本文中排序都是采用的从小到大排序>一、对int类型数组排序int num[100];Sample:int cmp ( const void *a , const void *b ){return *(int *)a - *(int *)b;}qsort(num,100,sizeof(num[0]),cmp);二、对char类型数组排序(同int类型)char word[100];Sample:int cmp( const void *a , const void *b ){return *(char *)a - *(int *)b 阅读全文

posted @ 2010-11-14 11:06 yming0221 阅读(107) 评论(0) 推荐(0)

导航