简单神经网络代码1-1

类别:编程语言 点击:0 评论:0 推荐:

今天我的计算机终于修好了, 下午懒的去上课了 顺手写了一段小程序 没有写完 感觉好累 先发上来 以后接着继续写

   是一段神经网络的(玩了bug brain后的感想)  写的比较乱

其中 单神经元突触 和 树突 就是 输入和输出 用扩展数组实现  全部神经元用链表实现

或许 把单神经元 中突触 和 树突 也用链表实现好一些 不过 我写这个目的是让人指点一下 我的神经网络 是否正确  

  没有编译  刚装的机子 还没装编译器 一装一堆 晚上熬夜慢慢装

/*这3个头 不管用不用的上 我都要包括 个人习惯*/

#include <stdlib.h>

#include <string.h>
#include <stdio.h>

#define U2           unsigned int
#define ERROR_CODE   1
#define MAX_RECYCLE  32
/*
    全部代码没有检查是否有足够内存
*/

typedef struct nervecell
{   
     static tick = 0;
     U2 nerve_cell_num;
     U2 i_is_cell = 0;
     U2 i_n_cell  = 5;
     U2 o_is_cell = 0;
     U2 o_n_cell  = 5;
    
     struct nervecell *input;
     struct nervecell *output;        
}NERVECELL;
typedef struct logicnervecell
{
    NERVECELL *nc;   
    struct logicnervecell *next;
}LOGICNERVECELL;        
class NN
{
 /*神经元链表*/    
   LOGICNERVECELL **nc;
   LOGICNERVECELL *frist_nc;
 /*===========================================*/ 
   LOGICNERVECELL *recycle;
   U2 INIT,INC;
   //U2 is_cell;
   U2 recycle_cell;
   U2 n_cell;
   public:
   NN(U2 init);  
   ~NN();
   void addNerveCellByNum(U2 n);
   void delNerveCell(U2 n);
   LOGICNERVECELL *findNerveCell(U2 n);
   void connectNerveCell(U2 sou,U2 dec);
   void disconnectNerveCell(U2 sou,U2 dec);
};

本文地址:http://com.8s8s.com/it/it22444.htm