diff --git a/UyTube_aplicacion/src/Logica/Controladores/CAdmin.java b/UyTube_aplicacion/src/Logica/Controladores/CAdmin.java
index ac0093f04c80892cce56bf45a5e80b38af374327..f4c2b586f6de052d9085d479d141a9334daacf02 100644
--- a/UyTube_aplicacion/src/Logica/Controladores/CAdmin.java
+++ b/UyTube_aplicacion/src/Logica/Controladores/CAdmin.java
@@ -364,6 +364,42 @@ public class CAdmin implements IAdmin{
         return usuarioSeleccionado.listarUsuariosSeguidores();
     }
     
+    public ArrayList<DtUsuario> listarUsuarioNoSeguidos(){
+        /**
+         * Devuelve todos los usuarios a quienes sigue usuarioSeleccionado
+         */
+        if (this.usuarioSeleccionado == null){
+            throw new RuntimeException("El sistema no tiene un usuario seleccionado");
+        }
+        // creo el array de retorno y obtengo la lista de usuarios seguidos
+        ArrayList<DtUsuario> noSeguidos = new ArrayList();
+        ArrayList<DtUsuario> seguidos = listarUsuarioSeguidos();
+        // para saber si hay que agregar a la lista de retorno o no
+        boolean agregar;
+        
+        // no quiero que incluya al usuario seleccinado, asi que lo agrego para excluirlo
+        seguidos.add(usuarioSeleccionado.getDT());
+        
+        // rrecorro los usuarios del sistema
+        for (Map.Entry<String, Usuario> u : usuarios.entrySet()) {
+            agregar = true;
+            // recorro los usuarios seguidos para ver si debo agregar a u al array de retorno
+            for (DtUsuario uSegido : seguidos){
+                // si encuentra coincidencia, no debo agregarlo ya que es un usuario seguido
+                if (u.getKey().equals(uSegido.getNickname())){
+                    // lo saco del array para ahorrar procesamiento
+                    seguidos.remove(uSegido);
+                    agregar = false;
+                    break;
+                }
+            }
+            if (agregar){
+                noSeguidos.add(u.getValue().getDT());
+            }
+        }
+        return noSeguidos;
+    }
+    
     public ArrayList<DtUsuario> listarUsuarioSeguidos(){
         /**
          * Devuelve todos los usuarios a quienes sigue usuarioSeleccionado
diff --git a/UyTube_aplicacion/src/Logica/Interfaces/IAdmin.java b/UyTube_aplicacion/src/Logica/Interfaces/IAdmin.java
index f188cbf06e9a4333d733bb9c7969804dedb7ecb9..837a66b06641ebdc929fb18124b8ec52e512f6d0 100644
--- a/UyTube_aplicacion/src/Logica/Interfaces/IAdmin.java
+++ b/UyTube_aplicacion/src/Logica/Interfaces/IAdmin.java
@@ -28,6 +28,7 @@ public interface IAdmin {
     public ArrayList<DtListaDeReproduccion> listarListasDeReproduccionDeUsuario(String nickname);
     public ArrayList<DtListaDeReproduccion> listarListasDeReproduccionParticularesDeUsuario();
     public ArrayList<DtUsuario> listarUsuarioSeguidores();
+    public ArrayList<DtUsuario> listarUsuarioNoSeguidos();
     public ArrayList<DtUsuario> listarUsuarioSeguidos();
     public ArrayList<DtUsuario> listarUsuarios();
     public ArrayList<DtVideo> listarVideosEnCategoria(String cat);
diff --git a/UyTube_aplicacion/src/Presentacion/Usuario/frmSeguirUsuario.java b/UyTube_aplicacion/src/Presentacion/Usuario/frmSeguirUsuario.java
index 2c8bcdb7aa7d8a4a18390ff63d454b16d5000c49..e5cb9cb3a7b09764ceecae2bff4cf7285592bef9 100644
--- a/UyTube_aplicacion/src/Presentacion/Usuario/frmSeguirUsuario.java
+++ b/UyTube_aplicacion/src/Presentacion/Usuario/frmSeguirUsuario.java
@@ -147,10 +147,8 @@ public class frmSeguirUsuario extends javax.swing.JDialog {
             lstNoSeguido.setEnabled(true);
             lstNoSeguido.clearSelection();
 
-            ArrayList<DtUsuario> Seguidos = Sys.listarUsuarioSeguidos();
-            ArrayList<DtUsuario> NoSeguidos = new ArrayList(ListaTodosUsuarios);
-            quitarUsuariosSeguidos(NickName, NoSeguidos, Seguidos);
-
+            ArrayList<DtUsuario> NoSeguidos = Sys.listarUsuarioNoSeguidos();
+            
             DefaultListModel modelo = new DefaultListModel();
             for (DtUsuario it : NoSeguidos) {
                 modelo.addElement(it.getNickname());
@@ -163,24 +161,7 @@ public class frmSeguirUsuario extends javax.swing.JDialog {
             JOptionPane.showMessageDialog(null, "Ha ocurrido un error \n" + e.getMessage(), "Error", JOptionPane.ERROR_MESSAGE);
         }
     }//GEN-LAST:event_btnSeguirActionPerformed
-    private void quitarUsuariosSeguidos(String yo, ArrayList<DtUsuario> ListaTodosUsuarios, ArrayList<DtUsuario> Seguidos) {
-        DtUsuario borrar = null;
-        for (DtUsuario ltu : ListaTodosUsuarios) {
-            if (ltu.getNickname() == yo) {
-                ListaTodosUsuarios.remove(ltu);
-                break;
-            }
-        }
-        for (DtUsuario s : Seguidos) {
-            for (DtUsuario ltu : ListaTodosUsuarios) {
-                if (ltu.getNickname() == s.getNickname()) {
-                    ListaTodosUsuarios.remove(ltu);
-                    break;
-                }
-            }
-        }
-        //debuelta un array (ListaTodosUsuarios) sin los seguidos
-    }
+
     private void lstSeguidorValueChanged(javax.swing.event.ListSelectionEvent evt) {//GEN-FIRST:event_lstSeguidorValueChanged
         // SegidoRRR
         if (evt.getValueIsAdjusting()) {
@@ -198,10 +179,8 @@ public class frmSeguirUsuario extends javax.swing.JDialog {
             lstNoSeguido.setEnabled(true);
             lstNoSeguido.clearSelection();
 
-            ArrayList<DtUsuario> Seguidos = Sys.listarUsuarioSeguidos();
-            ArrayList<DtUsuario> NoSeguidos = new ArrayList(ListaTodosUsuarios);
-            quitarUsuariosSeguidos(NickName, NoSeguidos, Seguidos);
-
+            ArrayList<DtUsuario> NoSeguidos = Sys.listarUsuarioNoSeguidos();
+            
             DefaultListModel modelo = new DefaultListModel();
             for (DtUsuario it : NoSeguidos) {
                 modelo.addElement(it.getNickname());