以前寫(xiě)過(guò)一篇關(guān)于數(shù)組長(zhǎng)度的文章,經(jīng)過(guò)某位好友的指點(diǎn),知道了新的解決方法了
 /**//*******************************************
T *a[n]和T (*a)[n]的區(qū)別
---------
T *a[n] 數(shù)組內(nèi)存放n個(gè)T型指針
T (*a)[n] 存放n個(gè)T型元素的數(shù)組
指針a指向這個(gè)數(shù)組//a為二級(jí)指針


---------------------------------------
T &a[n]與T (&a)[n]的區(qū)別
---------
T &a[n] [退化為指針]
T (&a)[n] 存放n個(gè)T型元素的數(shù)組的引用

********************************************/

#include<iostream>
using namespace std;

int insertsort(int (&a)[10])//防止了指針退化
  {
int j, key;
for(int i=1; i<sizeof(a)/sizeof(int); i++)
 {
key = a[i];
j = i - 1;
while (a[j]>key && j>=0)
 {
a[j+1] = a[j];
j--;
}
a[j+1] = key;
}
return (0);
}
int main()
  {
 int a[10] = { 2 , 6 , 9 , 3 , 5 , 8 , 1 , 6 , 3 , 8 } ;
insertsort(a);
for(int i = 0; i<sizeof(a)/sizeof(int); i++)
cout<<a[i]<<'\t';
system("pause");
return(0);
}

但必需知道數(shù)組的長(zhǎng)度,int(&a)[10]中的10必需說(shuō)明!所以如果未知數(shù)組長(zhǎng)度,必需先要求得! 再次受高手指點(diǎn),使用模版解決了n傳遞的問(wèn)題
template<class T,int n>
T insertsort(T (&a)[n])//防止了指針退化
  {
T j=T();
T key=T();
for(int i=1; i<n; i++)
 {
key = a[i];
j = i - 1;
while (a[j]>key && j>=0)
 {
a[j+1] = a[j];
j--;
}
a[j+1] = key;
}
return T();
}
我要繼續(xù)努力ing,好多知識(shí)有待熟悉額
1. 計(jì)算機(jī)專業(yè)碩士及以上學(xué)歷
2. 至少3年軟件開(kāi)發(fā)經(jīng)驗(yàn)
3. 精通C/C++、Win32、Unix/Linux開(kāi)發(fā),特別是ACE技能,熟悉Perl、unix shell腳本、Java和Oracle
具有RTP/RTCP、SIP、H323、VoIP和NGN相關(guān)經(jīng)驗(yàn)
熟悉設(shè)計(jì)模式、OOD和UML
熟悉軟件工程,具有CMM/CMMI經(jīng)驗(yàn)者優(yōu)先
良好的分析和解決復(fù)雜問(wèn)題的能力,善于溝通,有團(tuán)隊(duì)精神
4. 通過(guò)英語(yǔ)CET-6
先看看,暑假打算了解一下一些職位的要求,也好對(duì)自己的學(xué)習(xí)有個(gè)指導(dǎo)!大家覺(jué)得呢?
滿足d=gcd(a,b)=ax+by gcd(b,a%b)=bx'+(a%b)y'=bx'+(a-(a/b)b)y'=bx'+ay'-b(a/b)y'=ay'+b(x'-(a/b)y') 只需滿足 x=y' y=x'-(a/b)y'
//d=gcd(a,b)=ax+by
#include<iostream>
using namespace std;
int extEuclid(int a,int b,int&x,int&y)
  {
int d,tmp;
 if(!b) {x=1;y=0;return a;}
d=extEuclid(b,a%b,x,y);
tmp=x;
x=y;
y=tmp-(a/b)*y;
return d;
}

 int main() {
int a,b,x=0,y=0;
cin>>a>>b;//99 78
cout<<extEuclid(a,b,x,y)<<'\t'<<x<<'\t'<<y;
//system("pause");
return 0;
}

奇怪的是VC6.0編譯通過(guò)后執(zhí)行,無(wú)論如何x和y的值始終為0。而用dev-c++編譯通過(guò)后顯示結(jié)果正常! 如果將輸出改為
cout<<extEuclid(a,b,x,y)<<endl;
cout<<'\t'<<x<<'\t'<<y;
VC6.0編譯后運(yùn)行也就顯示正常了! I DON'T KNOW WHY?
//(a^b)%n
#include<iostream>
//這里用的是什么方法呢?
int modExp(int a,int b,int n)
  {
int t=1,y=a;
while(b)
 {
if(b%2==1)t=t*y%n;
y=y*y%n;
b=b/2;
}
return t;
}
//常規(guī)
int modexp(int a,int b,int n)
  {
int t=1;
for(int i=0;i<b;i++)t=t*a;
return t%n;
}

int main(void)
  {
int a=0,b=0,n=0;
std::cin>>a>>b>>n;
std::cout<<modExp(a,b,n)<<std::endl;
std::cout<<modexp(a,b,n)<<std::endl;
return 0;
}

誰(shuí)能給我講講它這個(gè)方法是什么數(shù)學(xué)原理呢? //第二個(gè)函數(shù)僅為測(cè)試正確性設(shè)置,不考慮溢出問(wèn)題
//非遞歸輾轉(zhuǎn)相除求最大公約數(shù)
int gcd(int a,int b)
  {
int r=0;
r=a%b;
while(r)
 {
a=b;
b=r;
r=a%b;
}
return b;
}
//最小公倍數(shù)
int lcm(int a,int b)
  {
return (a*b)?a*b/gcd(a,b):0;
}
一些比較好的參考書(shū)籍,如果你有更好的資源,請(qǐng)分享一下啊!呵呵
科目
|
國(guó)內(nèi)書(shū)籍
|
國(guó)外書(shū)籍
|
國(guó)內(nèi)作者
|
國(guó)外作者
|
高等數(shù)學(xué)
|
數(shù)學(xué)分析新講
|
微積分學(xué)教程
|
張筑生
|
菲赫金哥爾茨
|
數(shù)學(xué)分析
|
|
復(fù)旦大學(xué)
|
|
高等代數(shù)
|
高等代數(shù)
|
|
林成森/盛松柏
|
|
代數(shù)學(xué)
|
|
莫宗堅(jiān)
|
|
概率論與數(shù)理統(tǒng)
|
|
|
|
|
計(jì)算方法學(xué)
|
計(jì)算方法(Computational Methods)
|
|
華中理工大學(xué)數(shù)學(xué)系
|
|
離散數(shù)學(xué)
|
基礎(chǔ)集合論
|
|
北師大
|
|
面向計(jì)算機(jī)科學(xué)的數(shù)理邏輯
|
|
陸鐘萬(wàn)
|
|
圖論及其算法
|
圖論及其應(yīng)用
|
王樹(shù)禾
|
Bondy &
Murty
|
|
具體數(shù)學(xué)
|
|
Graham和Knuth
|
初等數(shù)論
|
Introduction to Algorithmic Number Theory
|
潘氏兄弟著
|
Bach
|
數(shù)論導(dǎo)引
|
華羅庚
|
形式語(yǔ)言與自動(dòng)機(jī)
|
|
|
|
|
匯編語(yǔ)言和微機(jī)原理
|
計(jì)算機(jī)組成與結(jié)構(gòu)
|
|
王愛(ài)英
|
|
IBM—PC匯編語(yǔ)言程序設(shè)計(jì)
|
|
沈美明
|
|
數(shù)字邏輯
|
數(shù)字邏輯
|
|
劉英嫻
|
|
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)
|
操作系統(tǒng)的內(nèi)核設(shè)計(jì)與實(shí)現(xiàn)
|
|
|
|
現(xiàn)代操作系統(tǒng)
|
|
|
|
操
作系統(tǒng)
|
|
張堯?qū)W
|
|
Windows
操作系統(tǒng)原理
|
|
張堯?qū)W
|
|
編譯原理
|
|
編譯原理及實(shí)踐
|
|
Kenneth C.Louden
|
數(shù)據(jù)庫(kù)
|
數(shù)據(jù)倉(cāng)庫(kù)
|
Database System Concepts"
|
|
Abraham Silberschatz
|
人工智能
|
人工魚(yú)—計(jì)算機(jī)動(dòng)畫(huà)的人工生命方法
|
|
涂曉媛
|
|
網(wǎng)絡(luò)協(xié)議
|
計(jì)算機(jī)網(wǎng)絡(luò)教程
|
|
謝希仁
|
|
|