算法、数据结构
jamylu
走走停停,认识这个世界~
展开
-
C语言关于union
#includeunion Student{ int i; unsigned char ch[9];};int main (){ Student student; student.i=0x1632; printf("%x\n",student.ch[0]); //32 printf("%x\n",student.ch[1]); //16 print原创 2016-07-21 14:59:48 · 292 阅读 · 0 评论 -
NOJ 1008.第几天
此题为NOJ第1008题,关于闰年天数的判断和计算。原创 2016-08-23 12:38:52 · 412 阅读 · 0 评论 -
k好数
如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。给定K、L,求L位K好数的数目。#includeusing namespace std;#define abs(a,b) ((a)>(b)?(a-b):(b-a))#def原创 2016-12-08 19:50:59 · 252 阅读 · 0 评论 -
南邮蓝桥杯热身赛3
本题要求输入三行,第一行为数的个数N,第二行依次为N个数,第三行为任意数C。如果C在N个数中出现过,则输出第一次出现的序号,否则输出-1 。#includeusing namespace std;int main(){ int a; int c; int flag=0; cin>>a; int *b=new int [a]; for(int i=0;i<a;i++){ c原创 2016-12-08 19:48:51 · 300 阅读 · 0 评论 -
南邮蓝桥杯热身赛2
热身赛的第二题,求斐波那契数列第N项对10007取余的余数。提示,直接求余数,不用求出相应的斐波那契数,采用迭代提高效率,而非递归。#includeint Fib(int n){ int next; int previous=1; int result=1; while(n>2){ n-=1; next=previous%10007; previous=result%原创 2016-12-08 19:42:46 · 288 阅读 · 0 评论 -
LeetCode[6] ZigZag Conversion(java)
题目原地址点击打开链接,本文使用的是找规律,找出每行数字和行数的关系,建立表达式求解。但是效率较低。public class Solution { public String convert(String s, int numRows) { int len=s.length(); if(len==0||numRows<2) ret原创 2016-10-29 14:58:57 · 232 阅读 · 0 评论 -
南邮数据结构、算法实践周提高题2(Number Games)
A positive integer is considered prime if it is evenly divisible only by itself and 1. Also, by convention, 1 is not itself a prime.Thus, the sequence of primes begins:2, 3, 5, 7, 11, 13, 17, ...A原创 2016-10-27 16:45:47 · 681 阅读 · 0 评论 -
南邮数据结构、算法实践周提高题3(图的连通问题和二叉排序树)
Problem 3 Graph and Tree (Difficulty index ★★★★☆)3-1. A graph is a set of nodes connected in various ways by edges. You can often start at one node, wander along various edges from node to node, and原创 2016-10-28 16:09:53 · 580 阅读 · 0 评论 -
南邮数据结构、算法实践周基础题3(哈夫曼树及其编码)
是在一位学长的代码上改的,学长勿怪~.~#include #include #include using namespace std;templateclass PrioQueue //优先权队列类{public: PrioQueue(int mSize = 20); ~PrioQueue(){ delete [原创 2016-10-25 16:58:22 · 1052 阅读 · 0 评论 -
c++实现特殊数字矩阵
#include#includeusing namespace std;void main(){ int i,j,a[100][100],n,k; cout<<"input the width of the matrix:"; cin>>n; k=1; for(i=1;i<=n;i++){ for(j=1;j<=n+1-i;j++){ a[i-1+j][j]=k;原创 2016-08-23 13:14:27 · 1401 阅读 · 0 评论 -
c++实现2的n次方
#includeusing namespace std;#define MAXNUM 2000int arr[MAXNUM];int main(){ int n,index,i; cin>>n; index=0; for( i=0;i<MAXNUM;i++){ arr[i]=0; } arr[0]=2; for( i=1;i<n;i++){ int jinwei=0;转载 2016-08-23 12:58:55 · 15454 阅读 · 3 评论 -
c++关于线性表的基本操作
#includeusing namespace std;templateclass SeqList{public: friend void Converts(SeqList &L); SeqList(int MaxListSize =100); ~SeqList(){ delete[]data; }原创 2016-08-23 12:54:06 · 738 阅读 · 0 评论 -
c++实现快速排序(QuickSort)
#includeusing namespace std;templatevoid Swap(T &a,T &b){ T temp=a; a=b; b=temp;}templatevoid QuickSort(T A[],int n){ QSort(A,0,n-1);}templatevoid QSort(T A[],int left,int right){ int原创 2016-08-22 13:44:37 · 320 阅读 · 0 评论 -
链式栈简单模板代码
#include#includeusing namespace std;template class LinkStack;template class StackNode{public: friend class LinkStack;private: T data; StackNode *next;};templateclass LinkStack{public原创 2015-10-22 19:45:00 · 366 阅读 · 0 评论 -
递归法求三角形数(1,3,6,10,15...)
#includeusing namespace std;int Fun(unsigned int n){ if(n==1) return 1; else return Fun(n-1)+n;}int main(){ unsigned int n; cout<<"input the number of the Num:"; cin>>n; cout<<Fun(n)<<en原创 2016-07-25 11:19:48 · 1246 阅读 · 0 评论 -
c++实现字符串回文判断
#include using namespace std; int fun(int low, int high, char *str, int length){ if(length==0||length==1) return 1; if(str[low]!= str[high] && str[low]!=str[high]+32 && str[low]!=st原创 2016-07-21 15:11:36 · 2312 阅读 · 0 评论 -
清除行列
请编写一个算法,若N阶方阵中某个元素为0,则将其所在的行与列清零。给定一个N阶方阵int[][](C++中为vector)mat和矩阵的阶数n,请返回完成操作后的int[][]方阵(C++中为vector),保证n小于等于300,矩阵中的元素为int范围内。关键:判断某个元素是否一开始就为0public int[][] clearZero(int[][] mat, int原创 2017-03-08 13:01:07 · 279 阅读 · 0 评论