博客
关于我
Objective-C实现BellmanFord贝尔曼-福特算法(附完整源码)
阅读量:799 次
发布时间:2023-02-17

本文共 1639 字,大约阅读时间需要 5 分钟。

Objective-C ?????-????

???-???????????????????????????????????????????????????????Objective-C????????

????

???-?????????????????????????????????????????????????????????????????????????????(u, v)????????u?v???????v?u?????????v?u??????

????

  • ???

    • ??????????????????????
    • ????????????0??????????
  • ???

    • ???????(u, v)???????????
      • ???????u?v????????u?v????(u, v)????????v?u??????
  • ????

    • ???????????????-????????????????n-1????n???????????????
  • Objective-C ????

    ???????Objective-C??????-???????

    #import 
    @interface Edge : NSObject@property (nonatomic, assign) NSInteger source;@property (nonatomic, assign) NSInteger destination;@property (nonatomic, assign) NSInteger weight;@end@interface BellmanFord : NSObject- (void)initializeDistances:(NSDictionary *)nodes;- (void)relaxEdges:(NSArray *)edges;- (void)bellmanFordAlgorithm:(NSArray *)nodes array:(NSArray *)edges;@end

    ????

    • Edge??????????????????????
    • BellmanFord????????????????????????-????????
      • initializeDistances??????????????
      • relaxEdges???????????????
      • bellmanFordAlgorithm??????-??????????????

    ????

    // ???????NSDictionary *nodes = @{@"source": @"A", @"intermediate1": @"B", @"intermediate2": @"C", @"destination": @"D"};NSArray *edges = @[    @{@"source": @"A", @"destination": @"B", @"weight": -2},    @{@"source": @"B", @"destination": @"C", @"weight": 5},    @{@"source": @"C", @"destination": @"D", @"weight": 3}];// ???????[self initializeDistances:nodes];// ????[self bellmanFordAlgorithm:nodes array:edges];// ????for (NSString *node in nodes) {    NSLog(@"%s?????? %d", node, [distances[node] intValue]);}

    ??

    ???-???????????????????????????????????????????????????Objective-C?????

    转载地址:http://sdnfk.baihongyu.com/

    你可能感兴趣的文章
    OpenCV保证输入图像为三通道
    查看>>
    OpenCV入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
    查看>>
    opencv图像分割2-GMM
    查看>>
    opencv图像分割3-分水岭方法
    查看>>
    opencv图像切割1-KMeans方法
    查看>>
    OpenCV图像处理篇之阈值操作函数
    查看>>
    opencv图像特征融合-seamlessClone
    查看>>
    OpenCV图像的深浅拷贝
    查看>>
    OpenCV在Google Colboratory中不起作用
    查看>>
    OpenCV学习(13) 细化算法(1)(转)
    查看>>
    OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波
    查看>>
    OpenCV学堂 | CV开发者必须懂的9种距离度量方法,内含欧氏距离、切比雪夫距离等(建议收藏)
    查看>>
    OpenCV学堂 | OpenCV中支持的人脸检测方法整理与汇总
    查看>>
    OpenCV学堂 | OpenCV案例 | 基于轮廓分析对象提取
    查看>>
    OpenCV学堂 | YOLOv8与YOLO11自定义数据集迁移学习效果对比
    查看>>
    OpenCV学堂 | YOLOv8官方团队宣布YOLOv11 发布了
    查看>>
    OpenCV学堂 | YOLOv8实战 | 荧光显微镜细胞图像检测
    查看>>
    OpenCV学堂 | 汇总 | 深度学习图像去模糊技术与模型
    查看>>
    OpenCV安装
    查看>>
    OpenCV官方文档 理解k - means聚类
    查看>>