16 hhygcy

尚未进行身份认证

暂无相关简介

等级
TA的排名 1w+

sizeof struct为什么总是一个问题

在Win32 Crypto API里面很常用的一些接口如CryptImportKey, 会引入一些特定的数据结构作为key的内容和说明。我们在很多的sample里面看到了类似的定义,从而也发现了很诡谲的问题 struct KeyBLOB { BLOBHEADER header; DWORD cbKeySize; BYTE

2010-02-24 22:25:00

Symbian环境搭建,高版本ActivePerl兼容性解决方案(5.10.0)

最近要搭建一个定制的Symbian的开发环境,由于License的原因很多东西受到限制。所以拿到的Carbide是Nokia提供的2.1绿色版本:)(第一次用到),Activeperl也是,需要自己执行一个BAT来设定环境变量。这样就由不得我们自己去下载传统的ActivePerl-5.6.1.635或者ActivePerl-5.6.1.638,然后非常顺理成章的事情发生了。我拿到的

2009-11-13 20:25:00

面试题之最长回文字串

这个问题也是一个很有名的问题了,在pongba的群里面问起过,还有人引出了suffix tree来解决这样的问题,这个就是最长回文字的问题How will you find the longest palindrome in a string? I.e. if the string is XMADAMYX, Your code should print MADAM这个问题用后缀树解决

2009-10-13 21:24:00

面试题之二叉树最近公共父亲节点

很流行的一个问题,常见于各种面试中,http://fayaa.com/tiku/view/16/这里有一个很好的汇总.找寻二叉树中两个节点的公共父节点中最近的那个节点 情况1. 节点只有left/right,没有parent指针,root已知情况2. root未知,但是每个节点都有parent指针

2009-10-12 21:24:00

面试题之二叉搜索树的中位数

这个问题不算是很常见的问题,基本上在中文的论坛社区没有看到过,遇见这个是因为偶尔在http://www.ocf.berkeley.edu/~wwu/cgi-bin/yabb/YaBB.cgi 上面注册了账号而看到的,题目如下:Given a BST (Binary search Tree) how will you find median in that?   C

2009-10-11 17:30:00

面试题之2个有序数组求合并后的中位数

问题出处: http://fayaa.com/tiku/view/114/ 2个有序数组求合并后的中位数 第一步:假设两个有序数组(已经各自排序完成了)长度相等,试写函数找出两个数组合并后的中位数。第二步:假设两个有序数组长度不等,一样的求出中位数 解析: 这个题目看起来非常简单。第一题的话: 假设数组长度为n, 那么

2009-09-23 14:23:00

面试题之原地倒转字符串

题目出自:http://fayaa.com/tiku/view/3/嗯,照旧,据传说是MS/Google等等IT名企业的面试题:给定一个字符串,比如:the quick brown fox jumps over the lazy dog.请设计程序将这个句子倒转,即,完成以后如下:dog. lazy the over jumps fox brown qu

2009-09-23 00:13:00

面试题之寻找丢失的数字

题目来源:http://fayaa.com/tiku/view/2/ 据传说是MS/Google等等IT名企业的面试题:有一组数字,从1到n,中减少了一个数,顺序也被打乱,放在一个n-1的数组里请找出丢失的数字,最好能有程序,最好算法比较快BTW1: 有很多种方法的哦,据说O(n)的方法就不止一种BTW2: 扩展问题,如果丢失了2个数字呢?B

2009-09-22 22:00:00

开始写面试题

开始搞个面试题专栏,准备把发芽网上的面试题一一在Blog上做一遍,看看是不是可以轻松自如地完成

2009-09-22 21:57:00

写应用程序的要求和库的要求是断然不同的--- 有感于STL insert_n

在跨平台的大计上, 在Symbian上你找不到STL,在Windows Mobile,Brew上也没有RArray。有显然的一点就是你需要重新写一个类似的容器来满足类似的需求,在这里强烈地感觉到写应用程序的要求和Library是断然不同的。我们在std::Vector里面有一些常用的insert, resize等操作通常有一个共同的内部实现函数, 在MS STL里面我们看到的是_Insert_

2009-09-22 10:58:00

打开文件对话框GetOpenFileName Win32, PPC, Smartphone上的异同

前些日子看到有人问这个如何在Mobile上打开打开文件对话框,在c#里面我们知道有个OpenFileDialog, 那是相当的方便,如果要在WinCE的native API下面做也是可以的,这里就用到了GetOpenFileName的接口(GetSaveFileName一样的参数就不说了)。具体的用法看看这里的实现:  OPENFILENAME ofn;

2009-09-07 21:48:00

双线性插值(Bilinear interpolation)的图像旋转在mobile上面的C++实现

在图像拉伸了以后, 很自然地我们想把图像的旋转也做进来。我们找来了图像旋转的公式: X =  X cosθ -  Y sinθ;Y =  X sinθ  + Y cosθ; 这个图像公式大家在高中数学课都是会算滴。 然后我们要扩展一下因为我们不是在原点做旋转,我们要围绕原来的图片中心做旋转, 那么我们假定原来的图像中心是 oldCenterX, oldCenterY

2009-08-20 12:06:00

Windows Mobile 编译错误解析:LNK2019: unresolved external symbol __GSHandlerCheck

一再看到有人在CSDN论坛上面问, 我的PPC/SMARTPHONE的SDK example为什么编译不过,我没有做过任何的修改啊!然后出现的错误都是类似的 LNK2019: unresolved external symbol __GSHandlerCheck 的错误,然后出了错误, 大抵都失去了对Microsoft的信任:)那问题的缘由处在什么地方呢?其实在MSDN Blog上面有对于类似问题

2009-08-13 13:21:00

双线性插值(Bilinear interpolation)的图像拉伸在mobile上面的实现

在进入频域变换之前, 我们还是轻松一下,再搞点平面上的变化来看看。这把选了一个双线性插值(Bilinear interpolation)来实现是源于看到了csdn上别人的问题, 权且实现一个函数,方便大家的使用吧。双线性插值简单的说,就是扩展了之后的图像像素坐标映射回原来的坐标空间的时候, 如果出现了没有对应到整数点的情况。这时候需要做2次线性的插值计算出新的坐标的像素值,比如说:

2009-08-11 15:51:00

谈谈 C++ 的私有继承 (Private Inheritance) 在跨平台(Cross Platform)上的妙用

当前mobile平台上主流的C++开发环境有Windows Mobile, Symbian, Brew, Linux等等, 为了加速应用程序在各个平台上的开发, 通常的办法是做一个跨平台的框架(Cross Platform Framework)。那样很多平台无关的代码共享无疑加速了开发,现在关键的问题是如何做到这样平台抽象层。我们看到过很多和下面类似的代码:/*** salThr

2009-08-04 10:39:00

图像锐化 边缘检测的一些基础知识

互联网兴起, 生活节奏飞速,快餐成了favorite。理论学习也受到了巨大的冲击,一些不明所以的冰冷的公式和整段可以运行的代码是很多人的最爱。使得原本应该沉静的软件开发变得异常浮躁,(当然很多博客也成了帮凶:))今天就要融化冰雪, 说说代码以外的东西,说说冰雪初成的原因。 锐化的概念,我们从锐度开始谈起。很多人都以为锐度就是Sharpness,其实在数字图像的领域, 这个锐度更准确的说法是

2009-07-29 14:04:00

图像锐化算法 C++ 实现

之前一段我们提到的算法都是和平滑有关, 经过平滑算法之后, 图像锐度降低, 降低到一定程度, 就变成了模糊。 今天我们反其道行之, 我们看看锐化是怎么做的。 这里的锐化, 还是的从平滑谈开去。我们先来观察原来的图像和平滑图像的区别: 原图 raw                           减去模糊图 blur                          

2009-07-08 13:41:00

高斯平滑 高斯模糊 高斯滤波器 ( Gaussian Smoothing, Gaussian Blur, Gaussian Filter ) C++ 实现

发展到现在这个平滑算法的时候, 我已经完全不知道如何去命名这篇文章了, 只好罗列出一些关键字来方便搜索了.在之前我们提到过了均值滤波器, 就是说某像素的颜色, 由以其为中心的九宫格的像素平均值来决定. 在这个基础上又发展成了带权的平均滤波器, 这里的高斯平滑或者说滤波器就是这样一种带权的平均滤波器. 那么这些权重如何分布呢? 我们先来看几个经典的模板例子:尝试了使用这些滤波

2009-07-07 18:43:00

混合中值滤波器 ( Hybrid Median Filter ) C++ 实现

在中值滤波器和均值滤波器之后, 我们看到是中值滤波器的改版, 这个名字我实在不好把握 Hybrid Median Filter实在不知道翻译成什么比较妥当.只好沿用了混合动力车里面的混合二字, 姑且把这种滤波器命名为混合中值滤波器. 这个滤波器的工作流程较之原先有些繁琐, 来看看这张图图截的有些模糊, 但是还是看出了大致的流程, 首先当前像素的上下左右和自身取中值, 然后左上右

2009-07-07 11:49:00

中值滤波器 ( Median Filter ) C++ 实现

 有了前面一个均值滤波器的基础, 在看中值滤波器就不是很容易继续了。均值滤波是像素周围的3*3的像素做平均值操作, 那么中值就是在3*3中的像素中寻找中值。 来看这样一个描述图(无图无真相)这把可以清晰地看到, 这里有6,2,0,3,97,4,19,3,10这些像素, 然后中间的这些像素值就被这些像素的中位数也就是中值取代了。为了满足和前面一篇文章的格式相对应, 我们马上进入下

2009-07-06 15:41:00

查看更多

勋章 我的勋章
  • 蓝花
    蓝花
    子板块内专家分月排名榜第三