大数问题

昨天瞌睡状态下写了一下大数相乘,各种低级bug,类型转换、参数写错、少写语句。。刚刚又写了一下。直接贴代码吧,写出来之后去poj2389跑了下过了。不过我发现,如果声明数组的时候size是变量(char c[clen]),在oj上会编译出错啊。但是sublime下没有这个问题。

阅读更多

链表的常见操作

链表的常见操作,摘自《剑指offer》。

阅读更多

poj1159

题目:Palindrome.

A palindrome is a symmetrical string, that is, a string read identically from left to right as well as from right to left. You are to write a program which, given a string, determines the minimal number of characters to be inserted into the string in order to obtain a palindrome.

阅读更多

递归与分治

综述

递归是一种思想,分治是一种算法。分治算法的思想是将一个较大的问题分解为若干个与原问题相似的小问题进行求解。分治算法可以用递归或者迭代的思想实现。分治法的一般步骤如下:

  • 划分, 把问题分解为若干子问题
  • 求解,递归求解子问题
  • 合并,把子问题的解合并为原问题的解

阅读更多

并查集

假设第i条边的两个端点序号和权值分别保存在u[i],v[i],w[i]中,排序后第i小的边的序号保存在r[i]中。

阅读更多

ACRush 楼天成回忆录

利用假期空闲之时,将这几年 GCJ , ACM , TopCoder 参加的一些重要比赛作个回顾。首先是 GCJ2006 的回忆。

阅读更多

Java编程思想

介绍一些Java语言的细节。

阅读更多

java 引用可能造成的一些小问题

最近粗心导致项目出了一点bug,调试了一个小时才发现是java引用的问题。
一般地,我们不在循环内进行变量的定义和分配内存,因为循环次数太多的话容易造成内存溢出。我通常也遵循这样的规则,但是在一些特殊情况下常常忘记变量的处理(重新初始化或别的)。常见的有两种情况:

阅读更多

C和C++基础语法集锦

不常用C/C++,整理一些基础语法备忘。

阅读更多

散列表

定义

维基百科定义:[ 散列表(Hash table,也叫哈希表),是根据键(Key)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表 ]

阅读更多