如何讲一段C++代码放入C#的windows窗体应用程序中做可视化界面

光纤铺设问题 我想用c#做张地图在上面画出最优铺设线路,C#画图我会,C++部分代码也完成了 我只是需要如何把C++代码放入C#中 。。。。不知道我的表达清不清晰
#include
#include
#include
#include
#include
#include
#define STATUS int
#define OK 1
#define ERROR 0
#define INFINITY INT_MAX
#define VERTEX_NUM 13
char a[VERTEX_NUM][20]={"信息楼","网络中心","图书馆","理学院","国际交流学院","体育馆","采矿馆","冶金馆","大成教学馆","综合楼","逸夫楼","何世礼教学馆","汉卿会堂"};
//建筑数组
typedef struct ArcCell
{
int distance;
bool pushe;//是否铺设的bool型变量
}ArcCell,DisMatrix[VERTEX_NUM][VERTEX_NUM];

typedef struct
{
char* name;
}VertexType;

typedef struct
{
VertexType vexs[VERTEX_NUM];
DisMatrix dist;
int vexnum;
}MGraph;//图结构

typedef struct
{
int adj;

}NODE;//堆排序数组

NODE Heap[25];
typedef struct UFSet
{
int x;
int y;
}UFSet;//并查集结构体

typedef struct
{
string name;
double x,y;
}Building;

UFSet set[25];
int rank[VERTEX_NUM];
int father[VERTEX_NUM];
STATUS ShowAllGraph(MGraph &G);//显示所有线路分布
STATUS CreateGraph(MGraph &G);//创建校园节点图
STATUS MiniSpanTree_KRUSCAL2(MGraph &G);//最小生成树KR2
void heapsort(int n);//排序
void Heapadjust(int i, int n);//调节大顶堆
void MakeSet(int x);//初始化并查集
int Find_set(int x);//查找父节点
void Uion_set(int x, int y);
void showMap(MGraph &G);
int menu();
STATUS ShowDist(int a,int b,MGraph &G)
{
printf("%s--%s(%d)\n",G.vexs[a],G.vexs[b],G.dist[a][b].distance);
return OK;
}
STATUS ShowAllGraph(MGraph &G)//显示所有节点及线路
{
int i,j;
for(i=0;i {
for (j=i+1;j {
if (G.dist[i][j].distance!=INFINITY) ShowDist(i,j,G);
}
}
return OK;
}
void heapsort(int n)//排序
{
int i,e;
for(i=(n-1)/2;i>=0;--i)
{
Heapadjust(i,n);
}

for(i=n-1;i>=1;--i)
{
e=Heap[0].adj;
Heap[0].adj=Heap[i].adj;
Heap[i].adj=e;
Heapadjust(0,i-1);
}
}
void Heapadjust(int s, int m)//调节大顶堆
{
int j;
int e=Heap[s].adj;
for(j=2*s;j<=m;j*=2)
{
if(j ++j;
if(e>=Heap[j].adj)
break;
Heap[s].adj=Heap[j].adj;
s=j;
}
Heap[s].adj=e;
}
void MakeSet(int x)//初始化并查集
{
father[x]=x;
rank[x]=0;
}
int Find_set(int x)//查找父节点
{
if (x != father[x])
{
father[x] = Find_set(father[x]);
}
return father[x];
}
void Uion_set(int x, int y)
{

if (x == y) return;
if (rank[x] > rank[y])
{
father[y] = x;
}
else
{
if (rank[x] == rank[y])
{
rank[y]++;
}
father[x] = y;
}
}

STATUS CreateGraph(MGraph &G)//创建一个图
{
int i,j,k;
G.vexnum =VERTEX_NUM;
for( i=0;i<VERTEX_NUM;i++)
{
G.vexs[i].name=a[i];
}

for(i=0;i<VERTEX_NUM;i++)
{
for (j=0;j<VERTEX_NUM;j++)
{
G.dist[i][j].distance=INFINITY;
G.dist[i][j].pushe=false;
}
}
G.dist[0][1].distance=103;
G.dist[0][2].distance=113;
G.dist[0][4].distance=170;
G.dist[1][2].distance=115;
G.dist[1][3].distance=128;
G.dist[2][3].distance=105;
G.dist[2][4].distance=154;
G.dist[2][6].distance=165;
G.dist[2][7].distance=288;
G.dist[2][9].distance=271;
G.dist[3][9].distance=240;
G.dist[3][11].distance=247;
G.dist[3][12].distance=229;
G.dist[4][5].distance=159;
G.dist[4][6].distance=97;
G.dist[5][6].distance=182;
G.dist[6][7].distance=151;
G.dist[7][8].distance=156;
G.dist[7][9].distance=173;
G.dist[8][9].distance=170;
G.dist[8][10].distance=354;
G.dist[9][10].distance=224;
G.dist[9][11].distance=153;
G.dist[10][11].distance=73;
G.dist[11][12].distance=267;
for(i=0;i<VERTEX_NUM;i++)
{
for (j=i+1;j<VERTEX_NUM;j++)
{
if (G.dist[i][j].distance!=INFINITY) G.dist[j][i].distance=G.dist[i][j].distance;
}
}
return OK;
}
STATUS MiniSpanTree_KRUSCAL2(MGraph &G)//最小生成树KR2
{
int i,j,k,m,n,x,y,z,a,b,c,d;
k=0;
m=0;
z=0;
for(i=0;i<G.vexnum;i++)
{
for(j=i;j<G.vexnum;j++)
{
if(G.dist[i][j].distance!=INFINITY)
{
Heap[k].adj=G.dist[i][j].distance;
k++;
}
}
}
for(i=0;i<G.vexnum;i++)
{
for(j=i;j<G.vexnum;j++)
{
if(G.dist[i][j].distance!=INFINITY)
{
set[z].x=i;
set[z].y=j;
z++;
}
}
}
for(a=0;a<G.vexnum;a++)
{
MakeSet(a);
}
heapsort(k);
while(m<25)
{
for(i=0;i<G.vexnum;i++)
{
for(j=i;j<G.vexnum;j++)
{
if(Heap[m].adj==G.dist[i][j].distance)
{
x=i;
y=j;
d=0;
while(d<25)

{
if(set[d].x==x&&set[d].y==y)
{
b=Find_set(set[d].x);
c=Find_set(set[d].y);
if(b==c)
{
Heap[m].adj=0;
}
else
{
Uion_set(b, c);
}
}
d++;
}
m++;
}
}
}
}
heapsort(k);
return 0;
}

void showMap(MGraph &G)
{

int i,j,k,x,y;
k=0;

while(Heap[k].adj==0)
{
k++;
}
while(k<25)
{
for(i=0;i<G.vexnum;i++)
{
for(j=i;j<G.vexnum;j++)
{
if(Heap[k].adj==G.dist[i][j].distance)
{
x=i;
y=j;
printf("%s--%s(%d)",G.vexs[x].name,G.vexs[y].name,Heap[k].adj);
printf("\n");
k++;
}
}
}
}
}

int menu()
{
char i;
printf(" ***************************************************************\n");
printf(" ***************************************************************\n");
printf(" 1.显示东大楼距 \n");
printf(" 2.克鲁斯卡尔二 \n");
printf(" 3.退出 \n");
printf(" ***************************************************************\n");
printf(" ***************************************************************\n");

return 0;

}
int main()
{
MGraph G;
int i;
CreateGraph(G);
while(1)
{
menu();
printf("Please press[1,2,3]to chose:");
scanf_s("%d",&i);
switch(i)
{
case 1:
ShowAllGraph(G);
break;
case 2:
MiniSpanTree_KRUSCAL2(G);
showMap(G);
break;
case 3:
return 0;
}
}
}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
如何讲一段C++代码放入C#的windows窗体应用程序中做可视化界面

光纤铺设问题 我想用c#做张地图在上面画出最优铺设线路,C#画图我会,C++部分代码也完成了 我只是需要如何把C++代码放入C#中 。。。。不知道我的表达清不清晰 #include <stdio.h> #include<string.h> #include<malloc.h> #include<limits.h> #include<stdlib.h> #include<windows.h> #define STATUS int #define OK 1 #define ERROR 0 #define INFINITY INT_MAX #define VERTEX_NUM 13 char a[VERTEX_NUM][20]={"信息楼","网络中心","图书馆","理学院","国际交流学院","体育馆","采矿馆","冶金馆","大成教学馆","综合楼","逸夫楼","何世礼教学馆","汉卿会堂"}; //建筑数组 typedef struct ArcCell { int distance; bool pushe;//是否铺设的bool型变量 }ArcCell,DisMatrix[VERTEX_NUM][VERTEX_NUM]; typedef struct { char* name; }VertexType; typedef struct { VertexType vexs[VERTEX_NUM]; DisMatrix dist; int vexnum; }MGraph;//图结构 typedef struct { int adj; }NODE;//堆排序数组 NODE Heap[25]; typedef struct UFSet { int x; int y; }UFSet;//并查集结构体 typedef struct { string name; double x,y; }Building; UFSet set[25]; int rank[VERTEX_NUM]; int father[VERTEX_NUM]; STATUS ShowAllGraph(MGraph &G);//显示所有线路分布 STATUS CreateGraph(MGraph &G);//创建校园节点图 STATUS MiniSpanTree_KRUSCAL2(MGraph &G);//最小生成树KR2 void heapsort(int n);//排序 void Heapadjust(int i, int n);//调节大顶堆 void MakeSet(int x);//初始化并查集 int Find_set(int x);//查找父节点 void Uion_set(int x, int y); void showMap(MGraph &G); int menu(); STATUS ShowDist(int a,int b,MGraph &G) { printf("%s--%s(%d)\n",G.vexs[a],G.vexs[b],G.dist[a][b].distance); return OK; } STATUS ShowAllGraph(MGraph &G)//显示所有节点及线路 { int i,j; for(i=0;i<VERTEX_NUM;i++) { for (j=i+1;j<VERTEX_NUM;j++) { if (G.dist[i][j].distance!=INFINITY) ShowDist(i,j,G); } } return OK; } void heapsort(int n)//排序 { int i,e; for(i=(n-1)/2;i>=0;--i) { Heapadjust(i,n); } for(i=n-1;i>=1;--i) { e=Heap[0].adj; Heap[0].adj=Heap[i].adj; Heap[i].adj=e; Heapadjust(0,i-1); } } void Heapadjust(int s, int m)//调节大顶堆 { int j; int e=Heap[s].adj; for(j=2*s;j<=m;j*=2) { if(j<m&&Heap[j].adj<Heap[j+1].adj) ++j; if(e>=Heap[j].adj) break; Heap[s].adj=Heap[j].adj; s=j; } Heap[s].adj=e; } void MakeSet(int x)//初始化并查集 { father[x]=x; rank[x]=0; } int Find_set(int x)//查找父节点 { if (x != father[x]) { father[x] = Find_set(father[x]); } return father[x]; } void Uion_set(int x, int y) { if (x == y) return; if (rank[x] > rank[y]) { father[y] = x; } else { if (rank[x] == rank[y]) { rank[y]++; } father[x] = y; } } STATUS CreateGraph(MGraph &G)//创建一个图 { int i,j,k; G.vexnum =VERTEX_NUM; for( i=0;i<VERTEX_NUM;i++) { G.vexs[i].name=a[i]; } for(i=0;i<VERTEX_NUM;i++) { for (j=0;j<VERTEX_NUM;j++) { G.dist[i][j].distance=INFINITY; G.dist[i][j].pushe=false; } } G.dist[0][1].distance=103; G.dist[0][2].distance=113; G.dist[0][4].distance=170; G.dist[1][2].distance=115; G.dist[1][3].distance=128; G.dist[2][3].distance=105; G.dist[2][4].distance=154; G.dist[2][6].distance=165; G.dist[2][7].distance=288; G.dist[2][9].distance=271; G.dist[3][9].distance=240; G.dist[3][11].distance=247; G.dist[3][12].distance=229; G.dist[4][5].distance=159; G.dist[4][6].distance=97; G.dist[5][6].distance=182; G.dist[6][7].distance=151; G.dist[7][8].distance=156; G.dist[7][9].distance=173; G.dist[8][9].distance=170; G.dist[8][10].distance=354; G.dist[9][10].distance=224; G.dist[9][11].distance=153; G.dist[10][11].distance=73; G.dist[11][12].distance=267; for(i=0;i<VERTEX_NUM;i++) { for (j=i+1;j<VERTEX_NUM;j++) { if (G.dist[i][j].distance!=INFINITY) G.dist[j][i].distance=G.dist[i][j].distance; } } return OK; } STATUS MiniSpanTree_KRUSCAL2(MGraph &G)//最小生成树KR2 { int i,j,k,m,n,x,y,z,a,b,c,d; k=0; m=0; z=0; for(i=0;i<G.vexnum;i++) { for(j=i;j<G.vexnum;j++) { if(G.dist[i][j].distance!=INFINITY) { Heap[k].adj=G.dist[i][j].distance; k++; } } } for(i=0;i<G.vexnum;i++) { for(j=i;j<G.vexnum;j++) { if(G.dist[i][j].distance!=INFINITY) { set[z].x=i; set[z].y=j; z++; } } } for(a=0;a<G.vexnum;a++) { MakeSet(a); } heapsort(k); while(m<25) { for(i=0;i<G.vexnum;i++) { for(j=i;j<G.vexnum;j++) { if(Heap[m].adj==G.dist[i][j].distance) { x=i; y=j; d=0; while(d<25) { if(set[d].x==x&&set[d].y==y) { b=Find_set(set[d].x); c=Find_set(set[d].y); if(b==c) { Heap[m].adj=0; } else { Uion_set(b, c); } } d++; } m++; } } } } heapsort(k); return 0; } void showMap(MGraph &G) { int i,j,k,x,y; k=0; while(Heap[k].adj==0) { k++; } while(k<25) { for(i=0;i<G.vexnum;i++) { for(j=i;j<G.vexnum;j++) { if(Heap[k].adj==G.dist[i][j].distance) { x=i; y=j; printf("%s--%s(%d)",G.vexs[x].name,G.vexs[y].name,Heap[k].adj); printf("\n"); k++; } } } } } int menu() { char i; printf(" ***************************************************************\n"); printf(" ***************************************************************\n"); printf(" 1.显示东大楼距 \n"); printf(" 2.克鲁斯卡尔二 \n"); printf(" 3.退出 \n"); printf(" ***************************************************************\n"); printf(" ***************************************************************\n"); return 0; } int main() { MGraph G; int i; CreateGraph(G); while(1) { menu(); printf("Please press[1,2,3]to chose:"); scanf_s("%d",&i); switch(i) { case 1: ShowAllGraph(G); break; case 2: MiniSpanTree_KRUSCAL2(G); showMap(G); break; case 3: return 0; } } }

C#windows窗体应用程序

public partial class AddForm : Form { private int intTemp; private user use = new user(); public AddForm(int temp, user u) { intTemp = temp; use= u; InitializeComponent(); } private RedoForm parentForm; public RedoForm pForm { get { return parentForm; } set { parentForm = value; } } 然后调用RedoForm窗体的方法 pForm.load(); 这是RedoForm中load的方法 public void load() { LJQLDataContext dc = new LJQLDataContext(); this.listView1.Clear(); foreach (var result in dc.user) { user u = (user)result; ListViewItem lvi = new ListViewItem(); lvi.Tag = u; lvi.Text = "编号:" + u.uID + "名称:" + u.uName; lvi.Name = u.uID; lvi.ImageIndex = 0; lvi.ToolTipText = "双击查看详细信息!"; this.listView1.Items.Add(lvi); } } 但调用报错,pForm未初始化,还要怎么初始化

C#Windows窗体应用程序打包

用VS编写了一个窗体应用程序,怎样进行打包(成EXE格式)能够让没有VS软件的电脑进行安装并运行.希望能够有截图。

求一本书关于c# Windows 窗体应用程序 Windows Forms

求一本书关于c# Windows 窗体应用程序 Windows Forms类似于下面这本书![图片说明](https://img-ask.csdn.net/upload/201511/10/1447146791_113919.png)

c#windows窗体应用程序数据存储,显示,打印和导出

新建一个windows窗体应用程序 创建form1和form2两个页面 ----------------------------- 在form1页面上添加控件button1(新增),button2(修改),button3(删除),button4(导出).datagridview(用来显示数据). 在form2页面上添加多个textbox(让用户输入数据) ----------------------------- 现在我已经做好了的是当点击button1跳转到form2页面,用户填写数据点击确定后将数据存入到一个xml文件中.xml中数据格式如下: <?xml version="1.0"?> <ArrayOfLWJL xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <LWJL> <ID>df13d4aa-bd0f-48c2-aba9-4c389ad12b2f</ID> <TIME>2016-11-03T00:00:00</TIME> <BM>BM</BM> <ZH>ZH</ZH> <TM>TM</TM> <PS>PS</PS> <JG>JG</JG> </LWJL> </ArrayOfLWJL> ----------------------------- 现在我不会做的是将xml文件中的数据对应显示在form1上的datagridview中并且当点击button4的时候能导出datagridview中的数据成excel表。 请各位大神帮帮忙。求全部代码。万分感谢!!!

用C#windows窗体应用程序设置点击一个button打开我想打开的exe程序后

vs2017windows窗体应用程序中使用 Process.Start("F:\\CShape行编辑\\CShape行编辑\\bin\\Debug\\CShape行编辑.exe");打开我想打开的文件后,运行时总是提示system.componentmodel.win32exception系统找不到指定的文件

C#Windows窗体应用程序如何返回到登陆界面

自己做了一个学生信息管理系统,里面有一个功能是修改密码,我想在修改成功之后回到登陆界面重新登录,想用form.showdialog()可是窗体一闪就消失了,问老师说要用到线程去解决,可是我们要下学期才学,哪位大神帮小妹一下,如何回到登录窗体并清空之前登陆以后的信息

C#窗体程序:设计一个Windows应用程序

设计一个Windows应用程序,使用for语句输出杨辉三角的前十行,形式如下 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 … 请大神能帮忙解答,谢谢了

c#窗体计算器应用程序

设置计算器的删除按钮在文本框为空时无法使用,代码是对的但是有错误提示,什么非静态的一堆提示,请问改怎么解决啊,如果真的是代码的问题求给出正确的代码。 按钮button,文本框textbox,c#窗体应用

C++ Windows窗体应用程序如何点击按钮跳转至另一个窗体

楼主最近因数据结构课程设计,需要写一个管理系统,且含图形化界面、。但是老师规定不能只能用双向循环链表存储数据,所以楼主便想创建"Windows窗体应用程序"工程。如图:![图片说明](https://img-ask.csdn.net/upload/201612/02/1480665530_509118.png) 之后创建好了两个窗口,一个login登陆窗口,一个登陆过后需要填跳转到的主界面。如图:![图片说明](https://img-ask.csdn.net/upload/201612/02/1480665789_180333.png)![图片说明](https://img-ask.csdn.net/upload/201612/02/1480665825_876956.png)。 为什么我写如下方法不能实现窗口的跳转?哪位大神帮忙支下招呗。谢了... ![![图片说明](https://img-ask.csdn.net/upload/201612/02/1480665903_251029.png) 附上main的代码![图片说明](https://img-ask.csdn.net/upload/201612/02/1480665849_783236.png) 应该是没有问题的啊,C#都可以这样写?

c#程序在vs2013的windows窗体应用程序项目里面弹窗提示信息乱码

vs2013的windows窗体应用程序项目里面弹窗提示信息乱码。 网上查找,有人说,设置字符集。可是压根就没有哪个选项?![图片说明](https://img-ask.csdn.net/upload/201704/06/1491455503_115077.png)

vs2013 VC++新建项目里没有windows窗体应用程序

本人已经从网上下载了vs2013的Windows窗体应用程序补丁,可是安装后,还是没有?求教大神!!

c#窗体应用计算器程序

实现计算器的删除功能。能删除整数和小数了,但是删除小数点的时候程序就报错了,求指点怎样实现删除小数,我是新手最好给下代码

C#应用程序窗体传递数据

求大神指点! 在C#应用程序窗体中,有窗体Form1与窗体Form2, 想将Form1窗体中TextBox传递到Form2的变量userId中, 并且Form2窗体不会弹出来。 求大神指点!

c#Windows应用程序,在多个窗体间怎么样使用同一个类?

c#Windows应用程序,在多个窗体间怎么样使用同一个类?类中的值要怎么样传过去?

C#窗体应用程序画曲线

怎么用C#窗体应用程序画一条曲线,用鼠标画,点击左键开始,记录鼠标经过的位置,松开左键结束,并能以虚线形式复制

C#windows窗体如何进行datagridview1数据输入与输出

在C#windows窗体下创建了一个datagridview1控件,想对datagridview1中的单元格进行数据输入,然后想把数据转换成矩阵再datagridview2输出,可是datagridview2输出的值一直为0。怎么解决?

c#窗体应用程序不运行下一行怎么解决,另外在一个窗体打不开另一个窗体

c#窗体应用程序不运行下一行怎么解决,另外在一个窗体打不开另一个窗体

C#窗体程序中的平方和开方的代码是什么?

问题如上,在写一个简单计算器,这个不知道是什么?求大神告知,在C#窗体程序中表示平方和开方的代码,

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

Intellij IDEA 实用插件安利

1. 前言从2020 年 JVM 生态报告解读 可以看出Intellij IDEA 目前已经稳坐 Java IDE 头把交椅。而且统计得出付费用户已经超过了八成(国外统计)。IDEA 的...

搜狗输入法也在挑战国人的智商!

故事总是一个接着一个到来...上周写完《鲁大师已经彻底沦为一款垃圾流氓软件!》这篇文章之后,鲁大师的市场工作人员就找到了我,希望把这篇文章删除掉。经过一番沟通我先把这篇文章从公号中删除了...

总结了 150 余个神奇网站,你不来瞅瞅吗?

原博客再更新,可能就没了,之后将持续更新本篇博客。

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

魂迁光刻,梦绕芯片,中芯国际终获ASML大型光刻机

据羊城晚报报道,近日中芯国际从荷兰进口的一台大型光刻机,顺利通过深圳出口加工区场站两道闸口进入厂区,中芯国际发表公告称该光刻机并非此前盛传的EUV光刻机,主要用于企业复工复产后的生产线扩容。 我们知道EUV主要用于7nm及以下制程的芯片制造,光刻机作为集成电路制造中最关键的设备,对芯片制作工艺有着决定性的影响,被誉为“超精密制造技术皇冠上的明珠”,根据之前中芯国际的公报,目...

优雅的替换if-else语句

场景 日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段: 优先判断条件,条件不满足的,逻辑及时中断返回; 采用策略模式+工厂模式; 结合注解,锦...

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

2020阿里全球数学大赛:3万名高手、4道题、2天2夜未交卷

阿里巴巴全球数学竞赛( Alibaba Global Mathematics Competition)由马云发起,由中国科学技术协会、阿里巴巴基金会、阿里巴巴达摩院共同举办。大赛不设报名门槛,全世界爱好数学的人都可参与,不论是否出身数学专业、是否投身数学研究。 2020年阿里巴巴达摩院邀请北京大学、剑桥大学、浙江大学等高校的顶尖数学教师组建了出题组。中科院院士、美国艺术与科学院院士、北京国际数学...

为什么你不想学习?只想玩?人是如何一步一步废掉的

不知道是不是只有我这样子,还是你们也有过类似的经历。 上学的时候总有很多光辉历史,学年名列前茅,或者单科目大佬,但是虽然慢慢地长大了,你开始懈怠了,开始废掉了。。。 什么?你说不知道具体的情况是怎么样的? 我来告诉你: 你常常潜意识里或者心理觉得,自己真正的生活或者奋斗还没有开始。总是幻想着自己还拥有大把时间,还有无限的可能,自己还能逆风翻盘,只不是自己还没开始罢了,自己以后肯定会变得特别厉害...

百度工程师,获利10万,判刑3年!

所有一夜暴富的方法都写在刑法中,但总有人心存侥幸。这些年互联网犯罪高发,一些工程师高技术犯罪更是引发关注。这两天,一个百度运维工程师的案例传遍朋友圈。1...

程序员为什么千万不要瞎努力?

本文作者用对比非常鲜明的两个开发团队的故事,讲解了敏捷开发之道 —— 如果你的团队缺乏统一标准的环境,那么即使勤劳努力,不仅会极其耗时而且成果甚微,使用...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

无代码时代来临,程序员如何保住饭碗?

编程语言层出不穷,从最初的机器语言到如今2500种以上的高级语言,程序员们大呼“学到头秃”。程序员一边面临编程语言不断推陈出新,一边面临由于许多代码已存在,程序员编写新应用程序时存在重复“搬砖”的现象。 无代码/低代码编程应运而生。无代码/低代码是一种创建应用的方法,它可以让开发者使用最少的编码知识来快速开发应用程序。开发者通过图形界面中,可视化建模来组装和配置应用程序。这样一来,开发者直...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

《Oracle Java SE编程自学与面试指南》最佳学习路线图2020年最新版(进大厂必备)

正确选择比瞎努力更重要!

字节跳动面试官竟然问了我JDBC?

轻松等回家通知

面试官:你连SSO都不懂,就别来面试了

大厂竟然要考我SSO,卧槽。

实时更新:计算机编程语言排行榜—TIOBE世界编程语言排行榜(2020年6月份最新版)

内容导航: 1、TIOBE排行榜 2、总榜(2020年6月份) 3、本月前三名 3.1、C 3.2、Java 3.3、Python 4、学习路线图 5、参考地址 1、TIOBE排行榜 TIOBE排行榜是根据全世界互联网上有经验的程序员、课程和第三方厂商的数量,并使用搜索引擎(如Google、Bing、Yahoo!)以及Wikipedia、Amazon、YouTube统计出排名数据。

阿里面试官让我用Zk(Zookeeper)实现分布式锁

他可能没想到,我当场手写出来了

立即提问
相关内容推荐