数据结构基础
文章平均质量分 59
孤独小剑
一个志在山顶的人不会留恋半山腰的奇花异草!
展开
-
两个整型数求出两者最大值
原题: 两个整型数,不准用if 、switch 、?:等判断语句求出两者最大值,说出你的思路,能写出代码更好乍看此题不难,细想……怎么搞。见到个使用这个方法的:int a = 3;int b = 4;((a + b) + abs(a - b))/2;((a + b原创 2011-08-22 22:25:43 · 1942 阅读 · 0 评论 -
数据结构基础(5)-->二分查找
#include #include #include #include int binary_serch(int *arr, int arr_len, int value){ int l = 0; int h = arr_len - 1; int m; while(l <= h) { m = l + ((h-l)>>1); if(value > arr[m]) {原创 2012-03-31 13:48:04 · 689 阅读 · 0 评论 -
哈希表的实现
hash.h#ifndef HASH_H#define HASH_H 1#include #include #include #include #include #define NMN_USER_HASH_LIST_MAX 1024struct user { struct hlist_node sibling; char username[32];/*原创 2012-02-27 13:15:34 · 836 阅读 · 0 评论 -
数据结构基础(4)-->二叉树
待续原创 2012-02-18 23:17:40 · 691 阅读 · 0 评论 -
数据结构基础(3)-->队列
queue.h#ifndef QUEUE_H#define QUEUE_H 1#include #include #include #define QUEUE_NODE_MAX 1024struct qnode{ char name[32]; int num; struct qnode *next;};struct queue{ int queuesize原创 2012-02-16 20:24:12 · 673 阅读 · 0 评论 -
数据结构基础(2)-->栈
stack.h#ifndef STACK_H#define STACK_H 1#include #include #include #define STACK_MAX 256struct snode{ char name[32]; int num; struct snode *next;};struct stack{ int stacksize;原创 2012-02-14 19:57:06 · 642 阅读 · 0 评论 -
数据结构基础(1)-->双向链表
linklist.h#ifndef LINK_LIST_H#define LINK_LIST_H 1#include #include #include struct stu{ char name[32]; char stu_num[32]; char sex[16]; int age; struct stu *next; struct stu *pre;};原创 2012-02-12 15:48:36 · 655 阅读 · 0 评论 -
等概率色子问题
问题描述:一个色子有六(N)面,每面出现是等概率的。现使用该色子随机表示M个等概率事件。#include #include #include #include #include #include #include #define EVENT_MAX 100static int dice_radix; /* 基数,比如7件事色子有6面,则基数为9 */static int原创 2012-02-10 15:02:43 · 1222 阅读 · 0 评论 -
类似于repalce的位的替换
题目:就是实现位的替换原型:void append(unsigned char *s,int n,unsigned char *buf,int len)说明:s为目标字符串,n为位数,buf为缓冲区,len为buf的长度。现在要在s中的第n位开始,赋上buf的值。不能用动态内存分配函数。求解答。注意,我说的是位。。。。不是字节。。相当于是s中的第n位到第n+len位是b原创 2011-11-08 14:45:45 · 963 阅读 · 0 评论 -
1024!末尾有几个零?
以前见过这题几次,也不记得是哪里的面试题了。1024可计为N解题方法有两种:一、使用大整数运算,也算是“暴力求解”了。但只看可能的求解长度就下一跳啊。此法不可取。二、运用数学理论不难发现:1、结果0的个数是和其小于N中各位为5的个数不无关系的。不是5的倍数无论和哪个相乘都不可能出现个位为0的结果。N以内的偶数个数肯定是大于5倍数的个数的(5和偶数相乘才可能增加末位0原创 2012-02-06 22:43:02 · 2819 阅读 · 0 评论