首页 > 代码库 > 面试宝典中用C++实现循环队列
面试宝典中用C++实现循环队列
清楚原理后很简单
#include<iostream> using namespace std; int abs(int a) { return (a>=0)?a:-a; } int max(int a,int b) { return (abs(a)>=abs(b))?abs(a):abs(b); } int foo(int x,int y) { //int u; int a=abs(x); int b=abs(y); int t=max(a,b); int v=(2*t-1)*(2*t-1); int u=v; if(y==-t) { u=u+7*t+x; } else if(x==t) { u=u+t+y; } else if(y==t) { u=u+3*t-x; } else { u=u+5*t-y; } return u; } int main() { // cout<<foo(1,0)<<endl; for(int y=-4;y<=4;++y) { for(int x=-4;x<=4;++x) { cout<<foo(x,y)<<'\t'; } cout<<endl; } system("pause"); return 0; }
面试宝典中用C++实现循环队列
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。