08 2012 档案
摘要:算法思想:利用向量叉积性质判断点和三角形边的相对位置关系。需要注意的是,在计算叉积之前需要先将三个顶点按顺时针或者逆时针方向排好序。叉积相关概念和性质参见:http://hi.baidu.com/zhubingn/item/cb63083e987b8cad134b14abhttp://en.wikipedia.org/wiki/Cross_product代码如下:#include <stdlib.h>#include <stdio.h>typedef struct _Point{ int x, y;}Point;void swap(Point *p1, Point *p
阅读全文
摘要:前两天在复习数据结构二叉树部分的时候,看到当初在书上写的一个问题:怎么能找出和一个前序序列对应的所有可能的中序序列,问题末尾有一个大大的问号,想必当时自己肯定没想明白。今天重新想了一下,这个问题相当于求一个给定入栈序列所有可能的出栈序列,用回溯的方法来做。算法的基本思想:模拟一系列入栈出栈的过程,对于每一步操作,可能是入栈,也可能是出栈;如果所有元素都已入栈,那就将栈中元素都弹出,这就找到一个中序序列。代码如下:/* * root是前序序列,l表示入栈的第几个字符,stack,top不用说了,inTree用来保存当前得到的中序序列 */void inorderTrees(char *root,
阅读全文

浙公网安备 33010602011771号