![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
Bill好想
这个作者很懒,什么都没留下…
展开
-
交换两个整数不通过中间变量
技巧:对于两个整数x,y,有x^x^y = x^y^x = y^x^x = y,^代表异或。异或:两个位的值不相同,则结果为1,如果两个位值相同,则结果为0。 如 2^2^3 = 2^3^2 = 3^2^2 = 2 所以其C/C++代码如下: #include int main() { int x = 2, y = 3; x = x^y; y = x^y;原创 2015-06-08 19:15:50 · 489 阅读 · 0 评论 -
用Java实现Dijkstra输出指定起点到终点的最短路径
最近在公司参加了一个比赛,一个二维矩阵,每个点都有权重,需要找出从指定起点到终点的最短路径。 马上就想到了Dijkstra算法,所以又重新温故了一遍,这里给出Java的实现。 而输出最短路径的时候,在网上也进行了查阅,没发现什么标准的方法,于是在下面的实现中,我给出了一种能够想到的比较精简的方式:利用prev[]数组进行递归输出。 package graph.dijsktra; imp原创 2017-09-15 21:02:26 · 7393 阅读 · 7 评论