亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gor.c

?? 17個最短路徑源代碼。代碼效率高
?? C
字號:
int gor ( n, nodes, source )

long n;                         /* number of nodes */
node *nodes,                    /* pointer to the first node */
     *source;                   /* pointer to the source     */

{

#define NNULL (node*)NULL
#define VERY_FAR  1073741823

/* -----   stacks definitions ----- */

typedef struct str_stack
           {
	     long     top;
             node   **arr;
	   }
             stack;

stack      new_pass, pass, top_sort;

/* status of node regarding to stacks */ 

#define OUT_OF_STACKS  0
#define IN_NEW_PASS    1
#define IN_TOP_SORT    2
#define IN_PASS        3

#define INIT_STACKS( source )\
{\
  new_pass.arr = (node**) calloc ( n, sizeof (node*) );\
  new_pass.arr[0] = source;\
  new_pass.top    = 0;\
  source -> status = IN_NEW_PASS;\
\
  pass.arr = (node**) calloc ( n, sizeof (node*) );\
  pass.top = -1;\
\
  top_sort.arr = (node**) calloc ( n, sizeof (node*) );\
  top_sort.top = -1;\
\
  if ( new_pass.arr == (node**) NULL || \
       pass.arr     == (node**) NULL || \
       top_sort.arr == (node**) NULL    \
     )\
    return ( 1 );\
}

#define NONEMPTY_STACK( stack )     ( stack.top >= 0 )

#define POP( stack, node )\
{\
node = stack.arr [ stack.top ];\
stack.top -- ;\
}

#define PUSH( stack, node )\
{\
  stack.top ++ ;\
  stack.arr [ stack.top ] = node;\
}\

/* -------------------------------------- */

long dist_new,
     dist_i;

node *node_last,
     *i,
     *j;

arc  *arc_ij,
     *arc_last;

long num_scans = 0;

/* initialization */

node_last = nodes + n ;
 
for ( i = nodes; i != node_last; i ++ )
   { 
      i -> parent   = NNULL;
      i -> dist     = VERY_FAR;
      i -> status   = OUT_OF_STACKS;
   }

source -> parent = source;
source -> dist   = 0;

INIT_STACKS (source)


/* main loop */

while ( NONEMPTY_STACK ( new_pass ) )
{
/* topological sorting */

  while ( NONEMPTY_STACK ( new_pass ) )
    {
      POP ( new_pass, i )

      if (  i -> status == IN_NEW_PASS )
	{ /* looking for any arc with negative reduced cost outgoing from i
             if any - start deapth first search */

          arc_last = ( i + 1 ) -> first;
          dist_i   = i -> dist;
   
          for ( arc_ij = i -> first; arc_ij != arc_last; arc_ij ++ )

             if ( dist_i + arc_ij -> len
                  <
                  ( arc_ij -> head ) -> dist
                )
             	 break;
	
          if ( arc_ij != arc_last )
            {
              i -> status  = IN_TOP_SORT;
              i -> current = i -> first;
	    }
          else
              i -> status = OUT_OF_STACKS;
	}


      if ( i -> status == IN_TOP_SORT )
	{ /* deapth first search */

         while ( 1 )
           {         
            arc_last = ( i + 1 ) -> first;
            dist_i   = i -> dist;

            for ( arc_ij = i -> current; arc_ij != arc_last; arc_ij ++ )
	      { 
	        j = arc_ij -> head;

                if ( dist_i + arc_ij -> len  <=  j -> dist &&
                     /* j -> dist   < VERY_FAR                && */
                     j -> status < IN_TOP_SORT
                   )
		    {
		      i -> current = arc_ij + 1;
                      PUSH ( top_sort, i )
		      j -> status = IN_TOP_SORT;
                      j -> current = j -> first;
		      i = j;

		      break;
		    }
	      }
	    
	    if ( arc_ij == arc_last )
              {
		i -> status = IN_PASS;
		PUSH ( pass, i );
                num_scans ++;

	        if ( NONEMPTY_STACK ( top_sort ) )
		    POP ( top_sort, i )
		else
		    break;
	      }
	  }/* end of 'while(1)' */
       } /* end of deapth first search */
    } /* end of topological sorting */
	      
/* Bellman - Ford pass */

  while ( NONEMPTY_STACK ( pass ) )
   {
      num_scans ++;

      POP ( pass, i )
      i -> status = OUT_OF_STACKS;

      arc_last = ( i + 1 ) -> first;
      dist_i   = i -> dist;

      for ( arc_ij = i -> first; arc_ij != arc_last; arc_ij ++ )
         { /* scanning arcs outgoing from  i  */
           j  = arc_ij -> head;

           dist_new = dist_i + ( arc_ij -> len );

           if ( dist_new <  j -> dist )
	     { 
	         j -> dist   = dist_new;
                 j -> parent = i;

                 if (  j -> status == OUT_OF_STACKS  )
		   {
		     PUSH ( new_pass, j )
		     j -> status = IN_NEW_PASS;

		   }
	     }
	 
           } /* end of scanning  i  */
    } /* end of one pass */

 } /* end of the main loop */

n_scans = num_scans;
return ( 0 );
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品一区二区三区蜜桃下载| 蜜臀a∨国产成人精品| 99国产精品国产精品毛片| 夜夜亚洲天天久久| 欧美无砖专区一中文字| 视频一区欧美日韩| 精品久久久影院| 99久久婷婷国产| 亚洲一区二区综合| 欧美一区二区精品久久911| 久久国产福利国产秒拍| 久久久国产精品不卡| 色婷婷激情综合| 青青草国产精品亚洲专区无| 欧美激情一区二区三区四区 | 日韩经典一区二区| 日韩视频一区二区在线观看| 国产尤物一区二区在线| 亚洲视频免费看| 精品国产乱码久久久久久夜甘婷婷 | 精品国产一区二区三区久久影院 | 国产一区二区三区美女| 亚洲日本va午夜在线影院| 日韩一级欧美一级| 91亚洲国产成人精品一区二三| 亚洲狠狠爱一区二区三区| 欧美激情资源网| 6080yy午夜一二三区久久| 成人18精品视频| 人人精品人人爱| 一二三区精品视频| 欧美国产成人在线| 欧美一区二区三区免费在线看| 不卡影院免费观看| 国产老妇另类xxxxx| 免费观看一级特黄欧美大片| 亚洲一区二区在线播放相泽| 亚洲欧美经典视频| 中文字幕 久热精品 视频在线| 欧美一区二区三区免费大片 | 欧美tickle裸体挠脚心vk| 欧美在线综合视频| 91黄色免费网站| 欧美专区在线观看一区| 日本精品一区二区三区高清 | av中文字幕亚洲| 成人自拍视频在线观看| 国产精品一色哟哟哟| 久久99精品视频| 精品一区二区日韩| 国产精品自拍毛片| 成人免费视频网站在线观看| 国产剧情一区在线| a在线播放不卡| 欧美亚洲国产一区二区三区va| 欧美精品一二三区| 久久综合网色—综合色88| 久久久久99精品国产片| 亚洲欧美电影一区二区| 亚洲一区二区黄色| 精品一区二区在线看| 成人午夜视频在线观看| 97se亚洲国产综合自在线不卡| 91麻豆免费在线观看| 69堂国产成人免费视频| 精品国产三级电影在线观看| 国产精品蜜臀在线观看| 亚洲成人777| 成人手机电影网| 日韩一卡二卡三卡四卡| 午夜精品视频在线观看| 日本欧美大码aⅴ在线播放| 精品在线你懂的| 色婷婷av一区二区三区软件| 欧美精品在线视频| 亚洲视频一区在线观看| 麻豆一区二区三| 91精品福利视频| 国产精品理论片| 精品一区二区三区视频| 欧美日韩视频在线观看一区二区三区 | 蜜臀久久99精品久久久画质超高清 | 91久久一区二区| 国产日韩v精品一区二区| 午夜精品久久久久| 色久优优欧美色久优优| 久久新电视剧免费观看| 日日夜夜精品视频天天综合网| 国产在线视频精品一区| 91精品国产高清一区二区三区| 亚洲图片欧美激情| 国产高清精品久久久久| 久久午夜羞羞影院免费观看| 视频在线观看一区二区三区| 色老综合老女人久久久| 亚洲青青青在线视频| 成人动漫av在线| 中文乱码免费一区二区| 激情小说欧美图片| 久久综合精品国产一区二区三区| 青娱乐精品视频| 日韩视频一区二区在线观看| 奇米四色…亚洲| 精品久久久久久综合日本欧美| 久久精品国产亚洲aⅴ| 日韩免费一区二区三区在线播放| 看电视剧不卡顿的网站| 国产亚洲精品7777| 99久久婷婷国产综合精品| 亚洲激情一二三区| 欧美视频在线一区| 久久精品99久久久| 中文av一区特黄| 欧美亚洲一区二区在线| 奇米亚洲午夜久久精品| 国产无人区一区二区三区| 91网站黄www| 美女视频第一区二区三区免费观看网站| 91精品国产全国免费观看| 国产一区二区视频在线| 亚洲欧洲一区二区三区| 欧美三级一区二区| 国产一区美女在线| 亚洲六月丁香色婷婷综合久久| 欧美高清视频一二三区| 国产一区二区三区综合| 亚洲国产综合色| 久久九九影视网| 5858s免费视频成人| 91在线免费播放| 国产91露脸合集magnet| 三级影片在线观看欧美日韩一区二区| 精品国产网站在线观看| 欧洲人成人精品| 成人免费va视频| 国产成人午夜高潮毛片| 日韩精品每日更新| 亚洲乱码中文字幕| 国产精品二区一区二区aⅴ污介绍| 精品久久国产字幕高潮| 欧美日韩黄色影视| 91官网在线免费观看| 国产精品99久久久久久似苏梦涵| 水野朝阳av一区二区三区| 日韩精品欧美成人高清一区二区| 亚洲自拍偷拍av| 午夜精品久久久久久久久久久 | 亚洲已满18点击进入久久| 综合久久一区二区三区| 中文字幕视频一区| 亚洲人123区| 午夜精品成人在线视频| 日韩av在线发布| 国产精品资源站在线| 92精品国产成人观看免费| 欧美在线观看视频一区二区| 欧美军同video69gay| 精品日韩av一区二区| 久久久久久一二三区| 亚洲日本护士毛茸茸| 美日韩黄色大片| 97精品国产露脸对白| 欧美精品久久99| 国产精品黄色在线观看| 亚洲成人综合在线| 欧美人妖巨大在线| 国产网站一区二区三区| 亚洲午夜久久久久久久久电影院| 国产一区三区三区| 欧美日韩大陆一区二区| 国产福利91精品一区| 亚洲综合另类小说| 国产精品原创巨作av| 欧美亚洲综合色| 国产精品美女一区二区| 精品午夜久久福利影院| 色婷婷av一区二区三区软件| 久久色在线观看| 亚洲444eee在线观看| eeuss国产一区二区三区| 久久综合成人精品亚洲另类欧美 | 在线精品视频免费观看| 中文字幕中文字幕在线一区| 久久精品国产亚洲5555| 欧美日韩一区三区| 亚洲你懂的在线视频| 国产iv一区二区三区| 精品国产乱码久久久久久免费 | 亚洲免费看黄网站| 成人国产精品免费网站| 国产亚洲综合性久久久影院| 麻豆国产欧美一区二区三区| 欧美日韩午夜在线| 日韩精品一区第一页| 欧美理论电影在线| 蜜桃av一区二区在线观看| 日韩一级完整毛片| 国内精品伊人久久久久av一坑| 精品国产99国产精品| 国产福利精品一区|