- 浏览: 126102 次
- 性别:
- 来自: 成都
-
最新评论
-
leelege:
让一切GenericDao都去死吧
自己写的一个Hibernate CURD的封装 -
liuxuejin:
不用泛型的飘过,个人觉得没有什么必要,因为增删查的代码(简单的 ...
自己写的一个Hibernate CURD的封装 -
java113096:
finallygo 写道icanfly 写道ricoyu 写道 ...
自己写的一个Hibernate CURD的封装 -
jiluo093:
http://jiluo093.iteye.com/blog/ ...
自己写的一个Hibernate CURD的封装 -
piao_bo_yi:
Dev|il 写道yin_bp 写道Dev|il 写道dnst ...
自己写的一个Hibernate CURD的封装
文章列表
Description
有一天津津和乖乖正在一起玩耍,忽然乖乖拿出了一些牌对津津说,我们来一起玩一个游戏,怎么样?津津爽快的答应了。
乖乖说:“有N张牌,记为1,2,...,N,应当怎样排放,才能使:打开第一张是1,拿出1后,然后拿两张依次放在末尾;打开上面一张,刚好是2,拿出2后,再拿两张依次放在末尾;打开上面一张,刚好是3;如此继续下去,直至打开最后一张是N。”
请问原来这些牌是怎么排列的?
Input
(a.in)n的值是大于等于0而小于等于52的.
Output
(a.out)原来这些牌的排列
Sample Input
4
Sample Output
1 3 4 2
...
【培训试题】排队打水问题(normal)
Time Limit:1000MS Memory Limit:65536K
Total Submit:1262 Accepted:450
Description
有n个人排队到r个水龙头去打水,他们装满水桶的时间t1、t2………..tn为整数且各不相等,应如何安排他们的打水顺序才能使他们总共花费的时间最少?
Input
第一行n,r (n<=500,r<=75)
第二行为n个人打水所用的时间Ti (Ti<=100);
Output
最少的花费时间
Sample Input
3 2
1 2 3
Sample Ou ...
#include <stdio.h>
#include <stdlib.h>
//qsort函数 有四个参数
//1.代表排序数组的基址
//2.要排序数组的长度,也可以对这个数组的子序列进行排序
//3.数组元素的内存长度
//4.要进行比较的函数
int cmp(const void * a, const void *b)
{
return *(int *)a - *(int *)b;
}
int main()
{
int num[] = {-1, 0, -3, -5, 9 , 7, 5, 1};
qsort(num, 8, ...
【培训试题】合唱队形
Time Limit:1000MS Memory Limit:65536K
Total Submit:1335 Accepted:650
Case Time Limit:500MS
Description
N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。
合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2…,K,他们的身高分别为T1,T2,…,TK, 则他们的身高满足存在i(1<=i<=K)使得Ti<T2<......<Ti-1<Ti>Ti+1>......& ...
#include <stdio.h>
#define MAXNUM 100
/*
函数功能:求解序列中的最大递增子序列的中包含的元素个数
算法说明:用到了动态规划问题,分解子问题b数组是用来存储每一个子序列中的最大递增子序列
求具有n个元素的序列中的最大递增自序列问题分解为
a[0], a[0] a[1], a[0] a[1] a[2], a[0] a[1] a[2]...a[m] m< n个子序列求其中的最大递增子序列
a[0]显然是递增的 所以b[0] = 1
a[0] a[1]求其中的最大递增自序列要依靠 a[0]如果 b[0] + 1 > ma ...
//栈的顺序表示实现
#include <stdio.h>
#include <stdlib.h>
//栈初始大小
#define STACK_INIT_SIZE 100
//栈的增长大小
#define STACKINCREMENT 10
#define OVERFLOW 0
#define ERROR 0
#define FALSE 0
#define TRUE 1
typedef int Status;
typedef int SElemType;
typedef int boolean;
//栈的顺序定义
typede ...
//栈的顺序表示实现
#include <stdio.h>
#include <stdlib.h>
//栈初始大小
#define STACK_INIT_SIZE 100
//栈的增长大小
#define STACKINCREMENT 10
#define OVERFLOW 0
#define ERROR 0
#define FALSE 0
#define TRUE 1
typedef int Status;
typedef int SElemType;
typedef int boolean;
//栈的顺序定义
typede ...
//单链表的创建
//算法思路:先建立一个空数据域的链表头指针
//从该节点依次插入新节点读入数据
//直至输入ctrl+z结束输入
#include <stdio.h>
#include <malloc.h>
typedef int ElemType;
//定义数据链表结构
typedef struct Node{
int data; //数据域
struct Node *next; //指针域
}Node,*linkList;
//创建链表
//头插法,先是一个空链表头指针,然后依次往后插入
linkList cre ...
//功能:顺序表的实现
//思路:初始化一个顺序表,如果n > INIT_LIST_SIZE 则重新分配内存空间
//反之,将元素存入顺序表
#include <stdio.h>
#include <malloc.h>
#define INIT_LIST_SIZE 2
#define ERROR 0
#define OK 1
#define LISTINCREMENT 10
#define SIZE sizeof(int)
typedef int ElemType;
typedef int Status;
//顺序表定义
typ ...
快速排序:
思想:就是以一个关键字为枢纽,让数组元素呈现一边小于枢纽,一边大于枢纽,然后然后对左边和右边进行递归进行相同操作,只到左右两边为有序序列,则结束
代码:
#include <stdio.h>
int rapidSort(int number[], int low, int high)
{
int pivotkey = number[low]; //关键字枢纽
while(low < high)
{
//从后往前遍历
while(low < high && pivotkey <= number[high] ...
堆排序:
堆定义:分大顶堆和小顶堆 大顶堆的父结点值比子结点大,并且左节点的值大于右结点的值,它可被视为一颗完全二叉树 树的深度为n 则 n-1层以前是被填满的,最后一层从一个结点的左子树开始填和数组对应
如数组 {0, 3, 5, 1, 8, 10, 9} number[0]不在排列范围内 下标从1开始,此时的堆结构为如图:
当用数组表示存贮了n个元素的堆时,叶子结点的下标从 n/2+1, n/2+2.....n
证明:当此为满二叉树的时候 且树的深度为k 则总共有 2^(k) - 1个结点,
由此可得前k-1层有2^(k - 1) - 1个结点
而总共有n个结点 则最后一层的结点树为 n ...
向前插入排序:(呵呵,不知道名字叫的对不对)
思想:就像从桌子上摸起扑克一样,摸起一张放到左手,然后把位置牌好,左手的扑克永远是排好序的
证明:开始左手是空的,从桌子上摸一张,显然此时左手上的牌是排好序的,然后摸起第二张,让第二张和第一张比较,如果第一张比第二张小,就把第一张和第二张交换,以此下去,左手的牌永远是排好序的
算法实现:(c语言实现,vc6编译通过)
#include <stdio.h>
int main()
{
int number[] = {3, 7, 1, 0, 11, 99};
int key; //保存关键字
int n = si ...
自己在dome一个小项目的时候,突发奇想,利用单例和工厂加上泛型的知识封装Po的CURD操作,直接上代码,文笔不好,呵呵,还请大家指教
接口规范,定义CURD操作
package edu.sasu.DAO;
import java.util.List;
/**
* 所有实体类遵循的接口
* @author Administrator
*
* @param <T>
* @param <ID>
*/
public interface BaseDao<T> {
/**
* 保存实体
* @param ...