当前位置: 代码迷 >> 综合 >> 20.8.7 queue memset Floyd
  详细解决方案

20.8.7 queue memset Floyd

热度:4   发布时间:2024-02-08 01:40:41.0

1.queue

queue<int> q;
//返回队首
q.front()//返回队尾
q.back();
//入队、出队
q.push(1);
q.pop();
//队列长度、判空
q.empty();
q.size();

2.memset

void* memset( void* dest, int ch, std::size_t count );

Converts the value ch to unsigned char and copies it into each of the first count characters of the object pointed to by dest. If the object is a potentially-overlapping subobject or is not TriviallyCopyable (e.g., scalar, C-compatible struct, or an array of trivially copyable type), the behavior is undefined. If count is greater than the size of the object pointed to by dest, the behavior is undefined.

int a[20];
memset(a,0,sizeof a);
//也可以是二维数组
int b[20][20];
memset(b,0,sizeof b);

3.Floyd

简单的判断两点最短路径的方法(O(n^2))
使用的是动态规划的思想

        for(int k=0;k<n;k++){for(int i=0;i<n;i++){for(int j=0;j<n;j++){temp[i][j]=min(temp[i][j],temp[i][k]+temp[k][j]);}}}